七月,敵軍突撲濰河,東省守將王心安方防駐戴廟,任敵偷渡,而膠、萊之防遂潰。是時蜚謗屢起,朝廷責備纂嚴,有罷運防之議。鴻章複奏,以為運河東南北三麵,賊氛來往竄擾,官軍分路兜逐,地方雖受蹂躪,然受害者不過數府縣之地,驅過運西,則數省流毒無窮。同是疆土,同是赤子,而未便歧視也。乃堅持前議,不少變。十月十三日,劉銘傳在安邱濰縣之交,大戰獲勝。二十四日,追至贛榆,銘傳與馬步統將善慶力戰,陣斃任柱,於是東撚之勢大衰。
二十八日,潘鼎新海州上莊一戰,斃悍賊甚夥。十一月十一二日,劉銘傳、唐仁廉等在濰縣壽光抄擊一晝夜,敵眾心攜,投降遂多。郭鬆林、楊鼎勳、潘鼎新繼之,無戰不捷。至二十九日,銘傳、鬆林、勳動等,躡追七十裏,至壽光彌河間,始得接仗。戰至十數回合,又追殺四十餘裏,斬獲幾三萬人,敵之精銳器械騾馬輻重拋盡。鴻章奏報中,謂軍士回老營者,臣親加拊慰,皆饑憊勞苦,麵無人色。賴汶洸在彌河敗後,落水未死,複糾合千餘騎,衝出六塘河防。黃翼升、劉秉璋、李昭慶等,水陸馬步,銜尾而下,節節追剿,隻剩數百騎,逼入高室水鄉。鴻章先派有統帶華字營淮勇之吳毓蘭,在揚州運河扼守。諸軍戮力,前截後追,十二月十一日,毓蘭生擒汶洸。東撚悉平,東、蘇、皖、豫、鄂五省,一律肅清。
鴻章奏捷後,附陳所屬諸軍剿撚以來,弛逐數省,轉戰終年,日行百裏,忍饑耐寒,憂讒畏譏,多人生未曆之苦境。劉銘傳、劉秉璋、周盛波、潘鼎新、郭鬆林、楊鼎勳,皆迭乞開缺,請稍為休養,勿調遠役。並以劉銘傳積勞致病,代為請假三月。乃七年正月,西撚張總愚大股,忽由山右渡河北竄,直逼畿輔。京師大震。初七、初八日,壘奉寄諭飭催劉銘傳、善慶等馬步各營,迅赴河北進剿,乃率周盛波盛傳馬步十一營,潘鼎新鼎字全軍,及善慶溫、德克勒西馬隊,陸續進發,由東阿渡河,飭郭鬆林、楊鼎勳整飭大隊,隨後繼進。
西撚之役,有較東撚更難圖功者,一則黃河以北,平坦千裏,無高山大河以限之,張總愚狡猾知兵,竄擾北地平原,擄馬最多,飆忽往來,瞬息百裏,欲設長圍以困之,然地勢不合,羅網難施,且彼鑒於任、賴覆轍,一聞圍紮,立即死力衝出,不容官軍閑暇,次第施工,此一難也,二則淮軍全部,皆屬南人,渡河以北,風氣懸殊,南男性情口音,與北人均不相習,且穀食麵食,習慣不同,而馬隊既單,麩料又缺,此二難也。
鴻章乃首請飭行堅壁清野之法,以為“前者任、賴撚股,流竄中原數省,畏墟寨甚於畏兵。豫東、淮北,民氣強悍,被害已久,逐漸添築墟寨,到處興城池相等,故撚逆一過即走,不能久停。近年惟湖北、陝西,被擾最甚,以素無墟寨,等辦不及,賦得盤旋飽掠,其勢愈張。直、晉向無撚患,民氣樸懦,未能築寨自守。張總愚本極狡猾,又係窮寇,南有黃河之阻,必致縱橫馳突,無處不流,百姓驚徒蹂躪,詎有已時,可為浩歎。(中略)自古用兵,必以彼此強弱饑飽為定衡。賊未必強於官軍,但彼馬多而我馬少,自有不相及之勢;彼可隨地擄糧,我須隨地購糧,賊常飽而兵常饑,又有不能及之理。今欲絕賊糧,斷賊馬,惟有苦勸嚴諭河北紳民,趕緊堅築墟寨,一有警信,收糧草牲畜於內,既自固其身家,兼以製賊死命,雲雲。”西撚之平,實賴於是。
四月,奏請以劉銘傳總統前敵各軍,溫旨敦促起行。使淮軍與直、東民團,沿黃河運河,築長牆浚壕以蹙敵。棟派各軍,輪替出擊,更番休息,其久追疲乏須暫休息之軍,即在運河東岸擇要屯駐,俟敵竄近,立起迎擊,以剿為防。又派張曜、宋慶分紮夏津、高唐一帶,程文炳紮陵縣、吳橋一帶,為運防遮護。左宗棠亦派劉鬆山、郭寶昌等軍,自連鎮北至倉州一帶減河東岸分紮,與楊鼎勳等軍就近策應,布置略定,然後進剿。
五月,撚股竄向西北,各軍分途攔擊,疊次獲勝。鴻章乃趁黃河伏汛盛漲時,縮地圍紮,以運河為外圍。而就思縣、夏津、高唐之馬頰河,截長補短,外為裏圈。逼賊西南,層層布置。五六月間,各軍迭次大捷,敵勢衰蹙,陣散漸多。六月十九至二十二等日,乘勝尾追,每戰皆捷。二十三日,張總愚涉水,向西南逃竄。二十四日,由平原向高唐。二十五日,潘鼎新追百二十裏,冒雨至高唐,敵已向博平、清平一帶,圖撲運河。而官軍早於馬頰河西北岸築長牆數百裏,足限戎馬,敵方洞知,已入彀中,竄地愈狹,死期近矣。是時各軍已久追疲乏,鴻章乃派劉銘傳生力馬軍助戰,軍勢大振。二十八日,將敵圈在徒駭黃運之間,銘傳調集馬步迎擊,追剿數裏,值郭鬆林東來馬步全軍。攔住去路,又兼河道分歧,水溜泥陷,劉、郭兩軍馬隊,五六千人,縱橫合擊,擒斬無算。張總愚僅帶領十騎北逃,旋自幸,沉於河以死。西撚肅清,中原平。八月,李鴻章入覲京師。