不過,這支英國的軍隊,後勤卻同樣糟糕,自拿破崙戰爭以來,在亞洲英軍的後勤訓練被荒廢了,在亞洲的大多數軍官,都沒有經歷過戰爭,哪怕是低強度殖民地衝突。而中華帝國的軍隊,是後起之秀,吸取了德國陸軍的優勢,在亞洲是裝備最好、組織最完善,很多軍官曾參加過對日本、菲律賓、印尼的作戰,擁有豐富的戰地經驗,中國的軍隊後勤系統也很完善。
而那些印度僕從軍的武器普遍落後,很多還是滑膛槍,而中國的民兵,即便是預備役的,都用上了新式線膛步槍——米尼步槍。而現役的帝國的軍隊,用的都是改進的天龍線膛步槍。
線膛步槍相對於滑膛槍,最大的優勢在於射程和精度。滑膛槍的有效射程只有150碼,並且精度很低。早期的線膛步槍也有很大缺陷,那就是裝填困難,製造成本也很高。中國工程師為天龍線膛步槍研製出一種新型子彈,這種子彈和現代步槍子彈已經很像。子彈是次口徑的,從槍膛前部裝入後,它可以自動卡入槍膛尾部的膛線,裝填時間大為縮短。到中國製造新式天龍線膛步槍時,機器工業有很大發展,新機床使得加工線膛步槍的成本大為降低,伴隨精度和射程的增加,天龍步槍的瞄準裝置也得到突破,槍後部的新式瞄準器,使得步槍瞄準距離達到900碼。
趕到錫金的英軍陸地作戰部隊,包括1個步兵旅,1個輕裝步兵團和1個騎兵團,每旅下轄3個團,每團3個營,每營3個連,每連100人左右。這樣整個軍隊6000人左右。每個英軍士兵都負荷沉重,包括大衣、毛毯、一雙備用靴子、換洗的襪子和襯衣、軍便帽、水壺、步槍和60發子彈,此外還要攜帶鹹牛肉和餅乾當食物。
這次英軍指揮官換成了拉蘭多勳爵,他是第七代貝爾福公爵最小的兒子,顯赫的身份和經歷加之為人謙和使得他成為英國指揮官的不二人選。
這次蔡鍔碰上了一個強勁的對手,中國傾全力苦戰一天,還是沒有拿下錫金要塞。雙方使用火炮相互遠距離攻擊,英軍獲勝,中國的軍隊士氣有點低落,第二天向錫金北部山區撤退十公里。
拉蘭多勳爵率英軍追擊,雙方在一個峽谷屯兵對陣。
幸運的是,中國的軍隊,得道者多助。山區多雨,夏天更是這樣,幾場雨下來,潮溼、小昆蟲和血吸蟲侵襲英國的軍營,加上印度僕從軍的衛生習慣極差,軍營中霍亂爆發。
7月22日,印度僕從軍的霍亂蔓延到英國的軍營。英軍的健康問題越來越嚴重。儘管所有帳篷被銷燬。但瘟疫無法被控制。7月25日,一場大火燒掉了英國很多軍需品,包括一萬頂帳篷、16000雙靴子和150噸糧食,使得情況更加糟糕。英軍晚上沒有帳篷,只能在寒冷中入睡。
鑑於英印聯軍帶有瘟疫,錫金國王要求聯軍必須進行隔離,不讓他們進城。7月27日清晨,聯軍又有300人因霍亂倒下。中英雙方都派出部隊偵察,但地形複雜,雙方沒有進行大的接觸。
7月28日,一場大雨下了一天一夜,英軍前哨放鬆了警惕,中國的軍隊牽引炮車發出的聲音在大雨中被忽視了。英軍認為這是補給車隊。誰會想到一場大進攻,會選擇在大雨中發動呢?因為火藥受潮將嚴重影響火力發揮。
不過蔡鍔這次也是冒險用奇兵!到了第二天黎明,大雨變小了,早晨的濃霧籠罩戰場,戰場情況和滑鐵盧戰役很相似,中國的軍隊的行動被濃霧遮擋。
拉蘭多勳爵在黎明前騎馬巡視前沿哨所,當他沿山脊前行時,他聽見深沉的聲音從對面山脊傳來,那是中國包裹炮車輪子發出來的。突然陣地的左面傳出一聲槍響,拉蘭多立即策馬返回營地,命令部隊行動。英軍前哨終於在濃霧中發現前進中的中國縱隊。
濃霧使雙方都不能準確評估戰場形勢,雙方指揮官都無法下達適當的命令。戰鬥變成小規模的遭遇戰。雙方士兵都被濃霧中莫名其妙飛來的子彈射殺,英軍彈藥桶受潮導致大量步槍無法射擊,雙方發生近距離白刃戰。儘管如此,中國的軍隊還是不斷取得進展,炮兵無情的肆虐英軍的營地,英軍很多陣地彈藥開始緊張,而受重創的步兵團撤退後,五千中國的軍隊出發向英軍進攻。
而英軍只能集合兩千人應對,中國還有大量預備隊。中國炮兵開始轟擊拉蘭多的指揮部。拉蘭多幕僚斯特朗維少將被炸斷一條腿。拉蘭多的副官懇求拉蘭多勳爵撤退到安全地帶,因為英軍傷亡慘重,但中國的軍隊還在源源不斷開來,不知道有多少人。
蔡鍔在戰前會議討論作戰計劃時,還決定從下游渡河登上南岸峭壁,出奇不意兩面鉗形夾攻英軍。他的判斷是準確的,中國的軍隊在下游渡河後打擊英軍左翼,完成鉗形攻勢,以縱隊隊型前進,並與英軍交火,英國先遣旅在炮火下成批倒下。
中國炮兵在等待己方散兵線退後,到安全距離然後向英軍炮擊。
英軍輕裝團展開隊形,這時右邊的中國騎兵不知衝下斜坡向英軍進攻,造成英軍炮兵無法射擊。英軍只好在遠距離向中國步兵密集隊形開火,中國的軍隊的精確火力打倒大批印度僕從軍,印度僕從軍步兵團陷入混亂,退回原來的陣地。
中國的軍隊3個步兵團約3000人裝成印度僕從軍輾壓過來,此時英軍陣地上不知從哪裡傳出一個聲音,說對面過來的是印度軍,不要開火。其他軍官奮力糾正這個錯誤命令都無濟於事,軍號手吹號停止射擊。不一會,中國的軍團開始大規模攻擊,英軍死傷慘重。
當中國的軍隊繼續衝下高地進入谷地的時候,他們發現面對的是英軍高地團指揮的英軍重騎兵。他們指揮官科林坎貝爾命令:「牢記不許後退,你們必須死在自己的崗位上。」英國高地團位於一座小山丘上,面對的是3000多名中國騎兵。中國騎兵全速衝擊,英軍高地團沒有時間調整為方陣隊形。方陣是步兵對抗騎兵的標準陣形,結果英軍高地團拉成一字線,以如此單薄的防線抵抗中國騎兵的衝擊。
很快,這個英國高地團危在旦夕。英軍的重騎兵出場了。重騎兵是騎兵的精華,他們是那個時代唯一裝備甲冑的部隊。每個騎手擁有頭盔和胸甲,衣著華麗。英軍重騎兵旅共計6箇中隊800人,儘管騎兵師指揮官一再命令重騎兵加速衝鋒,但重騎兵卻排成整齊的依仗隊形前進。英軍重騎兵旅指揮官斯卡萊特爵士十分滿意自己部隊隊形整齊,當雙方距離非常接近的時候他才下令衝鋒。雙方騎兵如颶風一樣攪在一起,使用馬刀相互砍殺。
中國炮兵帶來10門9磅野炮,被架了起來。這時,這些騎兵在它射程範圍內。9磅炮首先向英軍中央炮兵陣地開炮,4次射擊後,英軍炮兵開始撤退,然後,中國的軍隊開始炮擊英軍重騎兵。他們佇列被炸出許多缺口,支援不下去,開始撤退直到消失在中國的軍隊的視線之外。
當時的有煙火藥使得戰場能見度極差,因此英軍被中國的軍隊火炮近距離射擊打的暈頭轉向是完全正常的事情。那個時代,沒有命令在原地待命的步兵方陣被炮火打的粉碎是常有的事。
還有一些英軍在9磅炮的射程之外。但炮擊可以阻止英軍繼續衝下高地。最後,十門炮轉向英軍密集佇列,英軍被打得七零八落。傷亡慘重的第一線騎兵衝上高地,他們大肆砍殺看見的每個敵人。倖存的騎兵不得不又一次穿過彈雨撤退。673人參加了這次衝鋒,313人陣亡,134人負傷,近500匹戰馬被殺,英國騎兵也遭受了慘重損失。
最後,中國的軍隊與英軍展開白刃戰。英軍近衛團不情願的接受命令暫時後撤,損失了171人,隊形的中央被開啟一個大缺口。在這個關鍵時刻,一個身份不明的軍官傳令英軍撤退,英軍珀西上校拒絕了命令。他命令近衛軍收縮為防守陣形,米尼步槍齊射。但中國的軍隊高地旅的準確射擊,導致英軍陣形大亂並奔潰。
拉蘭多勳爵看到這種情況勃然大怒,但同時也失去了信心,下令全軍撤退,逃亡尼泊爾。中國炮兵繼續打擊落魄的英軍,黃昏將至,中國的軍隊還有數千沒有參戰的騎兵在遠方游弋。英軍最後沒有全身而退。醫生巡視戰場救護傷員並將傷員轉移後送到尼泊爾。這一戰英軍傷亡3000多人,僕從軍傷亡6300人。
蔡鍔命令中國的軍隊一路追擊,在一陣有效的炮火後,用炮擊削弱了英國原有的防禦工事。中國的軍隊很快進入錫金的首都甘托克。當地居民拿出鮮花和水果,來向中國的軍隊示好。蔡鍔帶兵迅速包圍了錫金王宮,解散錫金國王的宮廷衛隊。
錫金國王圖多南嘉1874年繼承王位,在位期間,尼泊爾移民與錫金居民因各種差異而發生衝突,引起英屬印度殖民政府的介入。殖民政府偏袒尼泊爾移民引起了圖多南嘉的不滿,圖多南嘉退往亞東的春丕谷,並與西藏結為同盟,原本就偏向中國。但1888年,英屬印度殖民政府派兵入侵錫金。在英軍與藏軍在則里拉山口發生數次小衝突之後,西藏交出了圖多南嘉。1889年,英屬印度派遣克勞德·格雷厄姆·懷特為專員,監督錫金內政,並於1894年將首都從杜姆龍遷往甘托克,圖多南嘉實際上成了傀儡國王。
蔡鍔的軍隊趕走英國侵略軍後,克勞德·格雷厄姆·懷特也逃到了尼泊爾。圖多南嘉帶人出宮迎接蔡鍔軍隊。蔡鍔根據李經述的命令,要求圖多南嘉效仿不丹國王,擔任大西藏區錫金自治區的行政長官,世襲罔替一百年不變。
錫金國王圖多南嘉思考再三,也只得同意了,向世界通電錫金併入中國。於是,在1909年,錫金,也變成了中華帝國大藏區的一個自治區。
蔡鍔率領中國的軍隊繼續追擊潰逃的英軍,不久就到了尼泊爾的邊境。