武德二年(619年)十一月,黃河封凍,李世民率軍踏冰渡河,與劉武周主力宋金剛部相持于柏壁。唐軍的后勤出了問題,糧草供應不上。李世民只得在河東就地征糧。河東百姓聽說是李世民任唐軍統(tǒng)帥,竟然不論遠近紛紛前往投軍。老百姓聚得足夠多了,李世民下令從他們身上征集軍糧,解決了唐軍的糧食困難。李世民深知宋金剛后勤補給比自己還難,因此唐軍堅守不戰(zhàn),等宋金剛糧盡時大舉出擊。
此時由于呂崇茂鬧得太厲害,李淵緊急抽調(diào)部隊,由永安王李孝基率領前去鎮(zhèn)壓。十二月,李孝基部將呂包圍在夏縣,呂向宋金剛緊急求援。宋正因李世民拒不出戰(zhàn)而閑來無事,就派出手下猛將尉遲敬德前去支援。由于尉遲敬德來得太突然,李孝基來不及反應就被前后夾攻,結果全軍覆沒,自己也被生擒。后來李孝基圖謀逃走,事泄被殺,成為唐朝第一個王級烈士。尉遲敬德得勝而歸,卻在路上遭到李世民所部殷開山、秦叔寶的伏擊,狼狽逃回。李世民來得及派人伏擊尉遲敬德,卻來不及援救李孝基部,只能算李孝基倒霉了。
相持到武德三年(620年)四月,宋金剛終于因糧盡不支而北撤。李世民立即全軍追擊。宋部撤退速度極快,李世民追擊也不遺余力,史載:“一晝夜行二百余里”,那是很驚人的強行軍了。由于行軍過快,輜重無法跟上,唐軍在追擊中竟斷了糧,部下苦勸李世民停止追擊,認為擊潰了劉武周主力,功勞已經(jīng)很大了,再追擊下去只怕反而因缺糧而敗。李世民嚴詞拒絕,聲稱這是難得的徹底擊潰劉武周的機會,如果放過了,等劉武周、宋金剛恢復過來就悔之已晚。最后還慷慨激昂地說:“吾竭忠報國,豈顧身乎!”他都這么說了,誰再敢說停止追擊就不免有怕死不愛國的嫌疑,結果大家都不敢再說肚餓,拼命緊追宋金剛。
由于宋金剛部更加肚餓,終于被李世民在雀鼠谷追到,一日八戰(zhàn),宋八戰(zhàn)八敗,損兵數(shù)萬,逃往介休去了。當夜,李世民部就在雀鼠谷宿營,此時李世民已經(jīng)兩天沒吃飯,三天沒解甲,相信他的部下只有比他更慘。當晚軍中無糧,總算不知從哪里找到了一只羊,那只羊應該是最慘的了,因為它是被幾萬人分吃掉的。
當時宋金剛還有部眾兩萬人,他一發(fā)狠將兩萬人統(tǒng)統(tǒng)拉出城去,開西門迎戰(zhàn)李世民的追兵。這次宋金剛背靠城墻布陣,南北長七里。李世民也針鋒相對地排開陣勢,由總管李勣、程咬金、秦叔寶等當其北,翟長孫、秦武通等當其南。
現(xiàn)在,雙方都已經(jīng)準備就緒,最后一戰(zhàn)馬上開始。在這一仗開始之前,讓我們扯一些題外話,在距離這場戰(zhàn)爭的1300余年后,聯(lián)合國秘書長加利在回答記者問他是否想連任聯(lián)合國秘書長的提問時,加利巧妙地引用了一句埃及諺語“舊鞋子好穿。”而在距加利1300余年前的李勣向李世民獻上一計,由李勣佯敗吸引宋金剛,李世民趁機攻宋金剛背后,計策雖老,卻很有用。宋金剛僅以身免部隊大部投降,戰(zhàn)死三千余人。尉遲敬德未能突圍,被困在介休城內(nèi)。李世民愛其武勇,派人招降,尉遲敬德見大勢已去,開城投降。
劉武周為擊敗李世民,將全部主力都派給宋金剛,宋部覆滅,劉武周的軍事力量不復存在了。后來劉武周、宋金剛分別被突厥處死,當了異鄉(xiāng)鬼。