李世民挥军追击,直到城下,俘虏歼灭了七千人,于是包围了洛阳。
唐骠骑将军段志玄奋力与王世充的士卒交战,深入敌阵,坐骑倒下,段志玄被王世充的士兵俘获,两名骑兵夹着他并抓住他的发髻,准备过河,段志玄奋勇跳起,那两名骑兵都掉下马来,段志玄骑上马奔回唐军,后面有几百名骑兵追赶,但不敢靠近。
李世民包围了洛阳宫城。
城中王世充的防御十分严密,大炮可以射五十斤重的石头,投出二百步远,有八个弓的弩,箭杆像车辐,箭镞如同臣斧,可以射五百步远。
李世民四面攻城,昼夜不停,十几天未能攻克。城中先后有十三个人想以城倒戈应唐,均没有来得及发动就被杀死。
唐军将士都疲惫不堪想回关中,总管刘弘基等人请求班师回朝,李世民说:“如今大举而来,应当一劳永逸。洛阳以东的各州已望风归服,唯有洛阳一座孤城,其势已不能持久,成功在即,怎么能放弃而回朝呢?”于是下令全军:“洛阳不破,决不回军,再有胆敢提起班师的一律斩首。”
众人才不敢再提班师一事。
李渊听说后,也下密敕让李世民还军。李世民上表说明洛阳必定可以攻克,又派参谋军事封德彝回朝面陈军前形势。
封德彝对李渊说:“王世充得到的地方虽然多,但都不过是略有联系的部属,实际号令所能管辖的只不过洛阳一城而已,他已经智尽力穷,克城之日就在近期之内。现在如果回师,他的势力就会重新振作起来,再加上各地互相联合,以后想要消灭他就难了!”于是李渊听从李世民的建议。
李世民写信给王世充,晓以祸福利害,王世充没有回复。
戊午(三十日),王世充的郑州司兵沈悦派人到唐左武侯大将军李世绩处请降。唐左卫将军王君廓夜晚带兵攻击虎牢,沈悦作内应,于是唐夺取了虎牢,抓获了郑国的荆王王行本及其长史戴胄。
三月,唐军在洛阳城外挖沟筑垒困守。洛阳城内缺粮,一匹绢才值三升粟,十匹布才值一升盐,服饰珍玩,贱如土芥。百姓把草根树叶都吃光了,就一起澄取浮泥,放入米屑作成饼吃,食后都得病,身体肿胀脚跟发软,饿死的人交错着倒在路上。
当初皇泰主迁百姓入宫城时,有三万家,到这时不足三千家。就是地位高贵的公卿,这时连粗糠都吃不饱,尚书郎以下官吏,需自己亲自参加劳动,还往往饿死。
唐武德三年(公元620年),李世民率领唐军攻伐王世充,在数次激烈交战后,终于占据上风,成功将王世充围困在洛阳。
但王世充不准备投降,他要做困兽之斗,因为他找来了窦建德这个强大的帮手。
王世充在被围困之时,派使者找到窦建德,许以利益,说以利害,成功使得窦建德站在了王世充这一边,两人成为盟友。
随即,窦建德亲率十万大军开赴洛阳,但他从河北进入河南再进洛阳,虎牢关是进入洛阳的必经之路。
但是想打下虎牢关,是极其困难的!
因为虎牢关是天下闻名的险关,此关南面连着嵩岳,北边是黄河,崖岸俊俏,易守难攻,它在洛阳的东部,是洛阳的东大门。
而此时,这座雄关正好被唐军拿下,这为唐军最终击败窦建德提供了有利条件。
窦建德命他的将领范愿守卫曹州,调孟海公、徐圆朗的所有兵马,向西救援洛阳。
到滑州,王世充的行台仆射韩洪打开城门迎他们入城。己卯(二十一日),军队到酸枣。窦建德攻陷管州,杀了管州刺史郭士安;又攻陷了荥阳、阳翟等县,水陆并进,用船运粮,向西溯黄河而上。
王世充的弟弟徐州行台王世辩派遣手下的将领郭士衡带几千兵马与窦建德会合,共十几万人,号称有三十万,在成皋东原扎营,在板渚修筑宫室,派人和王世充互通消息。
当初,窦建德写信给李世民,请唐军退到潼关,退还夺取的郑国土地,重修原来的睦邻关系。
李世民召集将佐商议此事,众人都请求避开窦建德的兵锋,郭孝恪说:“王世充已是穷途末路,马上就会成阶下囚,窦建德远道而来救助王世充,这是天意要郑、夏两国灭亡。我们应当凭借虎牢之险抵御窦建德,视情况而动,肯定能打败他们!”
记室薛收说:“王世充保据东都,仓库充实,统帅的兵马,都是江淮地区的精锐,现在的困难只不过是缺粮。因为这个缘故,被我们拖住,想打打不了,要坚守又难以持久。窦建德亲自统帅大军远道赴援,也会尽出其精锐。如果放他到此,两寇合兵,将河北的粮食运来供给洛阳,那么大战才展开,不知什么时候结束,统一天下的日子更是遥遥无期了。现在我们应当分出兵力围困洛阳,加深壕沟增高壁垒,如果王世充出兵,要小心不和他交战,大王您亲自率领骁勇精锐,先占据成皋,磨快兵器训练兵马,等他们到来,以逸待劳,一定能够克敌。打败窦建德后,王世充自然也就败亡,不出二十天,就会捉住两个国君!”
李世民十分赞赏他的计策。