平定薛舉後,李唐的第二個對手是劉武周。
與薛舉相比,劉武周的實力還算弱的,劉背後的主子——突厥人,卻是李唐的心腹大患。
619年,李淵再次讓李世民率關中主力征伐劉武周。李世民率軍自龍門關東渡,駐軍柏壁。絳州自古就是兵家必爭之地,而柏壁南依峨嵋,北控汾河,溝壑縱橫。李世民駐軍的「秦王堡」,更是形同鐵壁,易守難攻。這時的河東,由於連年戰亂,官庫已被掠空,軍糧是個問題。於是,李世民發佈安民告示,並願出高價購糧。附近的老百姓見唐軍紀律嚴明,紛紛歸附,糧送草,解決了軍糧的燃眉之急。不久,後勤部隊才從永豐倉調運糧食送到,唐軍穩住了陣腳。
時值隆冬,宋金剛親率大軍冒雪直逼柏壁,而李世民採取「休兵秣馬,緊壁挫銳」的戰術,每天只派出小股偵察兵,沒有較大的軍事行動。
兩軍在柏壁相持不下,誰也不敢貿然出擊,逐漸演變成後勤補給的較量:誰能保證自己的後勤補給跟上,又能控制對方的後勤通道,誰就贏了。
宋金剛立即召開軍事會議,首先發言:「李世民企圖依靠充足的糧食供應與我軍長期相持,這對我們十分不利。我軍的糧草全靠晉陽供應,兩地相距千里,道路崎嶇,更為嚴重的是,處於我軍糧道上的浩州城(山西汾陽)至今未能攻下,一旦糧道被唐軍截斷,我軍的處境將會非常危險。」
尉遲敬德說:「柏壁以南現有兩路反唐兵馬,一個是夏縣的呂崇茂,一個是蒲阪(山西永濟)的王行本。我率軍去增援二人,讓他們襲擾唐軍糧道。只要李世民軍心動搖,我軍就有機會取勝。」
宋金剛允許。
不料,李淵施反間計,封呂崇茂為夏王,命他襲擊宋金剛。
尉遲敬德果然中計,不管三七二十一就除掉呂崇茂,接著又出兵攻打蒲阪,但才到半途,就聽說老王已被李淵殲滅。
老宋想偷襲唐軍糧道徹底失敗了,只能寄於主公劉武周也能像李淵一樣拔除自己身後的釘子。不過劉武周畢竟與李淵相差甚遠,屢次出兵浩州,全都大敗而回。
翌年4月,李世民的大將劉弘基率精兵繞道成功馳援浩州,宋金剛的後勤供給線徹底地斷了。
老宋最不願意看到的事情發生了—軍糧無法補給,於4月13日深夜悄悄撤退。
次日早上,李世民發現敵軍逃跑,隨即親率八萬大軍追擊。打得宋金剛措手不及,只好撤入介休城內。
介休城哪裡養活得了那麼多軍隊?老宋堅守十天後,實在沒有辦法,只好下令出城與唐軍決戰,結果大敗。老宋逃向晉陽,尉遲敬德歸降。
老宋想退入晉陽,憑借充足的糧草和堅固的城防與李世民對持。沒想到他的運氣用完了,駐守晉陽的劉武周比李元吉跑得還快,聽說老宋敗了就投奔突厥「乾爹」去了。宋金剛也只好帶領殘兵投向突厥。
李世民收復河東,李唐江山穩定下來。