陝西的新年第一天,回民起義軍攻打同州城北,又被清軍擊退。
多隆阿已擊敗當麵的太平軍和撚軍,聲威更大,陝西的清廷官府對湘軍望眼欲穿。其中一個原因,在於勝保的部隊多是投降過來的,成分蕪雜,軍士不守紀律,軍餉匱乏,全靠百姓納捐。
苗霈林率部西進,清廷以為苗沛霖要造反,便將勝保逮捕問罪。清廷任命多隆阿為欽差大臣,兼統勝保的部隊。
宋景詩再次起義,清廷大臣都認為此事應歸咎於勝保,加重了勝保的罪名。
多隆阿率部抵達潼關,得知回民起義軍的根據地以王閣村和羌白鎮最為堅固,便率部趕到同州,在城外紮營。起義軍趁多隆阿的部隊剛到,還未紮穩腳跟,出動全部精銳攻擊。
多隆阿下令:“回民自起兵以來沒有受過重創,所以敢於主動向我出擊。今天這一仗,關係到整個陝西的安危。我會親臨前線觀戰,凡有不勝者斬首!”
此言一出,將士們無不驚悚,交戰時個個一以當百。不久,便攻克東西韓村的八座壁壘,全部搗毀。
1月20日,多隆阿令穆圖善統領九個營,在洛北修築壁壘,派長沙人陶茂林和蒙古正紅旗人溫德勒克西等將領率領騎兵和步兵保護,自己帶著薑玉順等將領觀察地形。他見洛水以南密集地排列著起義軍的營壘,便趁夜修造兩座浮橋,令陶茂林率部引誘起義軍離開營壘。
起義軍果然全部出動。道州人朱希廣率部悄悄渡到河南,搗毀起義軍的營壘,火光四起。朱希廣部奪得三座漢民村莊。從此天天都有戰鬥,多隆阿的部隊逼近王閣村,在村外四裏處紮營。起義軍首領無意再戰,派俘虜的潼關副將哈連升向多隆阿請求招撫。多隆阿拒不納降。
回民起義軍於2月中旬攻占西安以北七十裏處的涇陽,雷正綰很快就率部奪占。甘肅的回民起義軍襲擊陝西西部邊界城市隴州,殺死知州邵輔。陝甘總督熙麟駐紮在陝西東部邊界的潼關,奏調馬德昭部奔赴甘肅。多隆阿令馬德昭增援興安,省城紳士哀詞請求留下馬將軍駐防。瑛棨將西安紳民的意思上奏清廷,得到批準。
2月下旬,回民起義軍向西安發起攻擊,馬德昭部屢將起義軍擊退。甘肅回民在東部的平涼起義,向西北部推進,攻占固原。
清廷命令熙麟移駐甘肅東部的慶陽,指揮軍事,調延綏兵和阿拉善王旗兵增援固原。
四川的順天軍襲擊西安以西一百五十裏處的周至,以及西安與周至之間的戶縣。清軍向西安輸送糧食的道路更加阻塞。瑛棨命令王夢麟增援鳳翔,半路遭到回民起義軍攔截,返回西安。
多隆阿按兵不動,遲遲沒有發起猛攻。部隊中流行病疫,他沒有打勝仗的把握。他仔細觀察起義軍的根據地,發現王閣村與羌白鎮之間相距五裏,中間排列著八座營壘,周圍有長濠保護。羌白鎮的堡寨陡如峭壁,格外堅固。
多隆阿已經胸有成竹,計劃在部隊休整過後,一舉攻下羌白鎮的外圍保護層。等到周邊的營壘全部攻克以後,才向羌白進攻。
3月19日,多隆阿所部已經攻克起義軍的外層營壘,對羌白鎮發起攻擊的日子到了。
多隆阿與將領們相約:“一鼓齊頭並進,再鼓全部攀登,三鼓而沒有攻克者杖擊,四鼓而沒有攻克者斬首!”
開戰時,起義軍的騎兵從西南方疾馳而來,蘇倫保率騎兵迎擊,所向披靡。其他將領趁機揮軍直上,搭梯登堡,攻入堡內。羌白鎮被攻克以後,回民老弱哭天叫地,全被屠殺。
王閣村的起義軍見羌白已被攻破,一團驚慌,四處奔走,互相踩踏。陶茂林命令伏兵從林中殺出,很快就衝入堡壘,斬殺回民數以萬計,繳獲大量輜重器械和牲畜。奪得幾萬鏹錢。
多隆阿把繳獲的鏹錢全部犒賞軍士。日暮時分,部隊高唱凱歌回營,遠近兵民都來圍觀。
羌白鎮和王閣村是首義之地,起義軍首領群英薈萃,被多隆阿所部一舉殲滅。