业十三年(617)起兵反惰,自称西秦霸王,封儿子薛仁杲为齐公(后进封齐王),队伍发展到13万。薛举占据着今甘肃兰州、天水、陇西、宁夏固原、青海乐都等大片地区,军中有许多精骑骁将,兵锋甚盛。
武德元年(618)六月,薛举亲率大军进攻泾州(治所在今甘肃泾川)。李世民被李渊任命为征西元帅,领兵5万,迎击薛举。两军相遇于高墌(今陕西长武北)。李世民决定打持久战,拖垮敌军,于是深沟高垒,不与交战,不料李世民忽然患了疟疾;只好把大权交与刘文静、殷开山,他俩急于应战,在高墌西南设阵,遭薛举从阵后掩袭,结果唐军在浅水原大败,士卒阵亡十分之五六,大将军慕容罗眼、李安远、刘弘基等被俘。李世民只好带兵退还长安休整。
高墌大败,是世民领兵以来,也是他戎马生涯中最大的一次败仗,这一仗由于轻躁致败,使年轻的李世民得到极大教训。在此后的统一战争中,他一直保持比较清醒的头脑,他的军事指挥艺术也在经历这一次败仗后,逐步走向成熟。
高墌战后,薛举占领了高墌,又派薛仁杲进围宁州(今甘肃宁县),甚至还想直捣长安。不料薛举得暴玻豪,薛仁杲继位,驻扎在折坝城(今甘肃泾川东北),他与众将不和,兵势日衰。李世民乘机率军进攻高墌,薛仁杲派大将宗罗眼领兵拒战。这次李世民吸取上次失败的教训,认识到唐军新败,士气受挫,而秦军恃胜而骄,不宜与之交锋。于是坚壁不出,薛仁杲军多次挑战,唐兵始终不出战。唐军有些将领沉不住气,要求出兵,世民下令军中道:"敢言战者斩!"双方相持60多天,李世民见时机已到,在浅水营诱敌,敌将宗罗眼用全部精兵进攻,世民率大军从原北出其不意突袭,宗罗眼急忙回兵接战。世民亲率数十骁骑首先人阵,唐大军里外奋击,喊声动地,宗罗眼军大溃退,被斩首数千级,掉人涧谷而死的不可胜计。世民率2000多骑穷追不舍,窦轨叩马苦劝道:"薛仁杲仍然据坚城,虽然破宗罗眼,不可轻进。"世民却说:"我考虑很久了,破竹之势,不可丢失。"说罢继续追击。薛仁杲在城中十分惊慌,其骁将浑干等数人投降了世民,半夜唐军围城,守城将士抢着跳城归唐。薛仁杲走投无路,第二天就出城投降,陇右平定。
世民消灭薛举、薛仁杲父子割据势力的战争,前后近一年时间,最终大胜,世民被高祖任命为右武侯大将军、太尉等,继而出镇长春宫,晋拜左武侯大将军、凉州总管。
三、平刘武周
刘武周在隋朝担任鹰扬府校尉,他骁勇善战,结交豪侠。隋末起兵,依附突厥,攻下楼烦、定襄。农民起义军首领宋金刚投奔于他,他俩在突厥的支持下攻打太原,齐王李元吉(李渊的第四子)抵挡不住,携带妻妾弃城逃回长安。刘武周、宋金刚又连续攻克了绛州、龙门等地,直接威胁潼关。
李世民于武德二年(619)十月,主动上表请求领兵出征刘武周、宋金刚。高祖立刻同意了,并亲自到华阴(今属陕西)长春宫为世民送行。
十一月,李世民率领将士们冒着凛冽的寒风,踏着坚冰,从龙门渡过了黄河,驻扎在柏壁(今山西新绎西南),与宋金刚相峙。他运用灵活机动的战术,不断袭击宋金刚军,宋金刚军吃尽了苦头。
有一次,世民亲自率领轻骑去侦察,轻骑都分散了,世民只和一名甲士登上山丘睡觉。不久,敌兵从四面包围上来,他俩还在呼呼大睡。幸好一条蛇追逐一只老鼠,触到那名甲士的脸,甲士惊醒,他赶快叫醒世民,一起上马跑了,没跑出多远,就被敌兵追上,世民用大羽箭射死他们的骁将,才把敌骑吓退了。
唐军在与宋金刚军的对峙阶段中,有过几次战役,宋金刚军损失较大,几员大将也被俘虏。众将要求与宋金刚决战,而世民却说:"宋金刚孤军深入,精兵强将,都在这里,刘武周在太原,全靠宋金刚保护。宋军没有积蓄,利在速战。我军闭营养锐,挫折他们的锋芒。分兵汾州(治今山西汾阳)、隰州(治今山西隰县),冲击他们的心腹,他们粮尽计穷,自当逃走。应等待这个时机再决战,不应当速决战。"
到武德三年(620)四月,宋军粮食全部吃光,只好向北撤退。世民认为决战的时机完全成熟了,于是下令追击宋军。唐军在吕州(治今山西霍县)追上宋金刚部下寻相的部队,大败寻相兵,乘胜追击,一昼夜走200多里,交战数十回合。世民率军追击敌人雀鼠谷,一天打了八仗,唐军大胜,俘斩数万人。夜里,在雀鼠谷西原宿营,世民已两天没吃东西,三天没解甲了。军中只有一只羊,世民便和将士们分吃了。
宋金刚还剩2万人,世民领兵奔向介休。宋金刚背城布阵,世民派军分从南、北两面抵挡。唐军稍微后退,被宋军追赶,世民率轻骑去支援,从宋军阵后出击,宋军大败,被斩首3000级。宋金刚轻骑逃跑,世民追逐数十里,到达张难堡。守堡的唐军因世民连续作战,浑身尘土而没认出世民,不放他进堡,世民摘下头盔,守堡将士们才认出是秦王,他们又惊又喜,连欢呼带哭泣,赶忙迎接进来。左