徐圆朗、杜伏威先后突然向夏国投诚,不仅让隋帝国内部混战一团的各大势力极为震惊,更是极大刺激了野心勃勃的李唐政权。
李唐政权在夷陵以东的长江中下游和关中以北对李轨所部的扩张都受到强烈阻挠后,为了尽可能的增加自己的实力,李渊开始将自己的目光投向占据中原河洛之地的王世充。
因为李唐得到了关陇鲜卑军事贵族集团大部分人的支持,所以李渊对王世充形成了比较明显的军事优势。
他决定不再采用以往那种小规模的一城一地的拉锯战,准备对王世充发起全面的攻势,尽可能的在短时间内消灭王世充建立的郑国政权。
刚刚稳固住自己从瓦岗军那里夺来地盘的王世充得知这一消息后大吃一惊,毕竟他从瓦岗军手里抢来的地盘还不稳固,为了抵御唐军他从所属各郡中挑选出二十万骁勇之士结集于洛阳,设置四镇将军分守四城。
就在夏历五十五年七月,李世民奉命率军出征王世充。
因为王世充占据弘农郡和函谷关很难攻打,李世民先是派出一部分大军从潼关出发向东,做出主力进攻弘农郡的架势,然后他亲自率领大军从河东郡突然渡河南下攻入弘农郡的背后夺取了毫无防备的函谷关。
然后又与潼关出来的唐军前后夹击一举拿下了换乱一团的弘农郡,唐军的进攻速度是如此的快,洛阳以西的河阴、河南等各城守军居然还不知道唐军已经攻打过来,城池接连被唐军攻克,这样一来唐军一口气就攻打到了洛阳城外。
李世民的迅速进击震惊了王世充,介于唐军的迅速攻势和战略上的优势,王世充的郑政权大量官员军队纷纷投敌,这时的王世充已经不敢相信任何人,他只相信自己的亲族家人。
于是王世充派魏王王弘烈镇守襄城郡,荆王王行本镇守虎牢关(今河南汜水县西北),宋王王泰镇守怀州(今河南沁阳县),齐王王世恽兼管南城(今皇城南门外),楚王王世伟镇守宝城(皇城),太子王玄应镇守东城(皇城之东),汉王王玄恕镇守含嘉城,鲁王王道徇镇守矅仪城(东城之东)。
王世充委派的这些率兵镇守一方的大将都是他自己的宗亲家人,他自己则是亲自率最精锐的三万士兵到城外拒击唐军。
唐军先锋大将薛猛率前军包围了慈涧(今河南新安县东),王世充率兵三万亲自前来救援。
不过这时李世民率骑兵三万余突然进军慈涧意图将其围歼,王世充见状不得不放弃慈涧退回洛阳。
随后李世民派史万宝从宜阳南下占据龙门(今伊川县西南),刘威德从太行东(今山西济源县)包围河内(今河南沁阳县),王君廓从洛口(今河南巩县东南)去截断世充运送军粮的道路。
黄君汉(注意,这货就是当初放走翟让的狱吏)从河阳去攻打回洛城(今河南孟津县东南),李世民亲带大军屯于北邙山连营扎寨,逼向王世充亲自戍守的洛阳城。
等到了八月,黄君汉派校尉张夜叉率水军袭取回洛城,截断了河阳南桥,王世充大怒派太子玄应、大将杨公卿等攻打回洛,却未能攻克,只得在回洛城西边筑起一座城堡留兵镇守。
不久,刘德威攻克了怀州城(今河南沁阳县)的外城,情况愈发对王世充不利起来。
九月,王世充部将显州(今河南沁阳县)总管田瓒率所部汝南、淮安两郡投降李唐,于是李唐开始绕过洛阳城攻打淮阳、谯郡、汝阴等淮北诸郡。
面对着不断恶化的局势王世充麾下的将领充满了悲观的情绪,于是在九月十日这天王世充麾下大将张镇周忽然向李唐投降,薛猛趁势攻陷硖石堡(今河南洛阳县西)、千金堡(今河南洛阳县北)。
随即又有王世充大将杨庆以鲁阳郡(治今河南鲁山)降唐,于是唐军又开始从南阳郡不断向北攻打中川、汝北两郡,这时唐军已经从两个方向威胁到洛阳城的安危。
王世充太子王应玄镇守虎牢,军队驻扎在荥水、汴水之间,当他得知鲁阳郡降唐时立刻率部前来夺取,却被唐军阻击阻击。
随后,荥州、汴州先后降唐,唐军打通了嵩山之南联通南阳和河阴唐军之间的通路,王玄应见诸州皆降,只得从虎牢撤回洛阳,这时王世充几乎已经失去了洛阳以外大部分郡县的控制权。
面对着唐军进逼洛阳围城不断,自己的属地也逐渐为唐所占的日益恶化的局面,王世充在与大臣一番商议后不得不决定派人向割据大河以北的窦建德请求援助,毕竟如今仅存割据势力中最强大的就是李渊了。
虽然从前王世充与窦建德双方曾为争夺河内等一部分地盘发生过冲突,但建德的中书侍郎刘彬认为,应把握战机暂弃前嫌出兵应援。
他分析说:天下大乱,唐得关西,郑得河南,赵得河北,共成鼎足之势。今唐举兵临郑,自秋涉冬。唐兵日增,郑地日蹙,唐强郑弱,势必不支。郑亡,则赵不能独立矣,不如解仇除怨,发兵救之。赵击其外,郑攻其内,破唐必矣。唐师既退,徐观其变,若郑可取之,并二国之兵,乘唐师之老,天下可取也。
刘彬对形势的分析可谓切中要害、一箭双雕,而且切实可行。当时唐军势盛,单独由赵国或郑国都不足以与唐军对抗,只有维持三足鼎立,才可能生存,窦建德采纳了他的建议。
就在夏历五十六年三月,窦建德令范愿守曹州,单雄信等诸位大将率众西救洛阳,水陆并进以船队运粮,驻军于成皋东边的东原。
这时唐军围攻洛阳,哪怕有火药武器的帮助也因为洛阳城墙厚达五丈,李唐制造的低劣火药根本无法将其炸塌,洛阳城的久攻不下让李唐将士多疲惫欲归,李渊亦有休兵之意,但李世民却不同意。
此时面对窦建德的前来,多数人认为‘吾兵疲老,世充凭守坚城,未易猝拔,建德席地而来,锋锐气盛。吾腹背受敌,非完策也’主张退兵新安,以承其弊。
但是大将郭孝恪反对撤兵,他认为‘世充穷蹙,垂将面傅,建德远来助之,此天意欲两亡之也。宜据武牢之险以拒之,伺间而动,破之必矣!’
薛收也赞同此意见,并进一步补充了郭孝恪的意见,如今李唐政权面对的不仅仅是窦建德和王世充,更要在接下来面对最强大的夏国,只有尽快统一天才能在日后与夏国的战争中保持一定的抵抗力。
李世民很赞同郭孝恪和薛收的分析和建议,针对萧瑀等大将的反对意见,明确决断与窦建德大军继续作战。
于是他中分麾下,令齐王李元吉围守洛阳,他亲率精兵三千五百人东进虎牢。
到虎牢后,世民带人侦察窦建德军情,沿途将五百骑分别埋伏道旁,仅带尉迟敬德等四名勇将跟随。
在距窦建德军营三里处时几人却被对方发现,窦建德大将派出五千余骑兵追击,李世民等人迅速撤退把他们引入伏击圈内,周围唐军齐出大败敌军,斩首三百余级,这就极大的巩固了唐军的士气。
建德率兵西来,被唐军阻击于虎牢关近月余,几次交战又都失利,将士接连受到挫折之下开始思归,唐军又派轻兵拦截了他的军粮,不断袭扰窦建德的后方粮道。
面对这种形势,他召集将士讨论用兵之策,凌敬劝说窦建德大王先攻取大河以北的怀州、河阳,派遣大将驻守,然后翻越太行山脉攻入上党,迅速夺取李唐在河东汾河故地的汾、晋等地,然后再夺取蒲津威胁关中之地。
凌敬的计谋也是很好,不过王世充连连派人向建德求救哀求催促他发兵,窦建德麾下诸将也觉得自己的兵力远远超过唐军,心中有了轻敌的心思都主张与唐军决战。
虽然建德夫人曹氏也劝他要听从凌敬的建议,但建德不予理会,依然决定率大军与唐作正面交锋。
经过一番侦察后窦建德计划在唐军马料用尽,放马于河北之际袭击虎牢关。
这一消息却为李世民所知,五月李世民北渡河,南临广武,故意放马于河边以引诱对方,然后他自己却在当夜紧急赶回虎牢关。
第二天,中计的窦建德果然率全军来攻打虎牢关,李世民坚壁不出,窦建德布好战阵等了两个时辰,士卒饥疲之下都坐下来休息,因为天气炎热又争着去喝水漫无纪律。
就在这时李世民乘窦建德军散乱之机率众出战,直扑其阵。
而窦建德这时正在接见群臣,唐骑兵突然杀到,大臣们都向窦建德奔去,窦建德命骑兵应战,并命挡路的大臣们退开,就在这进退之间,唐军已经杀到了眼前,窦建德只得退到东边的山坡。
此时,两军恶战,李世民亲自率几员大将卷着唐军战旗突进到窦建德军阵的后面,然后打开旗帜。
正在激烈交战的窦建德军以为自己后方军阵已溃,于是全军大败,窦建德也在战乱中被擒。