李世民决定先瓦解王世充的周边城镇,经过八个多月的战争,李世民军队占领了虎牢关,随后河南五十多个州县都投降于李世民。此时,王世充孤立无援,他派遣使者前去向窦建德求救。窦建德想和王世充合作,先灭掉唐朝,再灭掉郑国,自己就可以称霸天下。窦建德率领10多万兵力前去解救王世充,窦建德先后攻下了郑州、荥阳等地,随后驻扎到了虎牢关的东面。李世民决定实行包围战,秦军占领虎牢关阻止窦建德军队向西前进。虎牢关地势险要,特别难攻克,窦建德军队和李世民军队大战了很多次,都未能突破。窦建德在原地驻扎了一个多月,士兵们丧失了斗志,李世民借用这一弱点,引诱窦建德出战。窦建德军队全部出动,李世民率领骑军直冲窦军军营,窦建德和大臣们正在讨论事情,根本没有防备李世民突袭,窦军军心大乱。随后,窦建德被俘虏,王世充投降,李世民获得胜利。