本月正值左宗棠六十生辰。清廷下旨賞壽,賜予左宗棠禦書旗常以及尚方珍玩,以表彰其功績。對於同時代的很多人來說,六十歲就意味著人生即將謝幕,但對左宗棠來說,他最輝煌的時刻還尚未來臨。
1872年1月,清軍趁回民軍向謝家坪壁壘推進之機,奮力出擊,奪據山腰,傅先宗等部分路疾進,回民軍倉促撤退,全部翻山而去。徐文秀率部登山,修築壁壘,打通了通向太子寺的路徑。
太子寺是河州要隘,過去清廷有州判駐紮在此地。馬占鼇見清軍日益逼近,召集循化撒拉的各路回民軍,環繞太子寺挖掘長濠防禦。他發現徐占彪部已開往肅州,洮河東岸空虛,便幾次派出部眾,越過古城沙泥站,劫奪清軍糧運。左宗棠調靈州駐防軍董福祥部,以及慶陽駐屯軍張福齊、徐萬福等部,進兵洮河以東扼守。徐占彪部抵達高台攔截回民軍,在清水激戰,擊敗崔偉、禹得彥、白彥虎等部。回民軍繞道關外,回師西寧。
徐文秀部攻打太子寺北麵的大紅莊,沒能攻克。傅先宗部決定改從南山進攻,剛剛攻到半山腰,回民軍出動一萬精銳抄擊清軍後路,雙方苦戰四個多時辰,楊世俊部斬殺回民軍首領,回民軍才開始撤退。回民軍又在寨外挖掘深壕,同時在南起瓦房山,連通塌馬橋、折抵黑山一線,修築幾十座壁壘,企圖切斷狄道的糧食運輸路線。
肅州已有十年混亂,而回民首領馬文祿已經就撫。但他聽說清軍在關外用兵,便重占肅州城,宣告叛變。徐占彪提議先進軍肅州以南的紅水壩,以遏止馬文祿部南下。
回民軍在新路坡至傅先宗軍營一線修築三座壁壘,占據爛泥溝的莊壘,互為犄角,致使清軍的狄道運糧線中斷。傅先宗率部進攻壁壘,未能攻克。回民軍槍炮並發,擊傷大批清軍。傅先宗一身當先,手執大旗,捷足先登,被炮子擊中,當即陣亡。
回民軍乘勢反攻,楊世俊部拚死抵抗,撤出戰場。徐文秀聞警,率部馳援,攻下爛泥溝的莊壘。傅先宗所部失去大將,後撤到黨川鋪照顧糧道,楊世俊率部駐紮石梁坡,勢單力孤。
回民軍見勢加緊攻勢,楊世俊部不支,也撤退紮營。徐文秀見東西兩路部隊都解圍而去,擔心大東鄉的回民軍乘虛進攻董家山,令所部回營,留下親軍助守各營。
2月19日這天,大風揚沙,回民軍乘勢攻打傅先宗所部。徐文秀部將回民軍擊敗。黃昏,回民軍主力開到,清軍兩營首先棄壘逃跑,各營隨之潰敗,一發不可收拾。徐文秀惱憤至極,獨自率領三百人拚死抵抗,身上多處受傷,直到戰死,身邊的官勇一百四十人陣亡。左宗棠接到敗報,飛馬傳令,讓沈玉遂接收徐文秀部的指揮權,派王德榜統領傅先宗所部,斬殺傅先宗部最先潰退的六名將官,令各部推進紮營。
馬占鼇見清軍士氣重新振作,又聽說西寧的外來回民和本地回民都已投降清軍,他的退路已經斷絕,便派回民首領馬俊等人到清軍營中參見,表示願意呈繳馬匹和武器,接受安撫。
在此之前,陝西回民軍崔偉、禹得彥和白彥虎部占據了西寧的大南川和小南川。當時馬尕三已經去世,馬永福繼任首領,他也願意投降。
正好此時左宗棠派到河州的已降回民馬壽清也回來報告,說回民首領都頭頂經書,表示永不反悔。於是,左宗棠令馬桂源與馮邦棅返回西寧,商議安撫事宜,陸續收繳河州回民的三千匹戰馬和六千多件槍矛。
馬占鼇等人又派子弟抵達安定獻馬,接受約束。左宗棠將他們全部放回去,令他們搜繳馬匹和武器,不要重蹈金積堡的覆轍。左宗棠仍令前線各部分別駐紮在各個關隘,及時就地耕墾。陝西回民首領馬生彥和馮君祿等人也請求在收割莊稼以後立即遷移,左宗棠批準。
肅州的回民軍不肯投降,他們埋伏在城濠,繼續抵抗。徐占彪部在距城十裏處迎戰,佯裝戰敗,回民軍出動全部兵力追殺。清軍伏兵殺出,攔截馬文祿,差一點將他抓獲。從此,馬文祿躲在城裏,不再出戰,隻是沿城加強守備。
肅州城內的回民軍決心以攻代守,他們又出動幾千兵力,著白衣,戴白巾,從南門排列陣式,步步逼壓推進。徐占彪令各營戒備,等到回民軍氣盡力竭才揮兵縱擊。很快,回民軍推進到距離清軍兵營幾丈處,忽然,西邊有大片黑雲壓來,回民軍陣列上空雷雹交加,將其火器全部淋濕。
清軍中軍鼓起,部隊開壁,一並殺出,回民軍亂作一團,全線潰退。徐占彪揮師縱橫出擊,回民軍留下一片屍體。清軍一直追到城下,方才收兵。徐占彪部乘勝攻打城東北的各座回民軍堡壘,全部掃平。隨即又圍攻朱家堡,攻克堡壘。從此,回民軍環城修築的防禦堡壘大部分都被拔除。