大业十三年,隋朝皇帝杨广钦点王世充讨伐李密。九月,隋朝政府军进攻李密据守的洛口。两军隔着洛水,互相对峙。十月,王世充率兵趁夜渡河,发动攻击。李密迎战,结果大败。
这第一次交锋,王世充吃到了甜头。但是战局马上出现了反转,随后,李密低开高走,把王世充打得满地找牙。
上一仗,李密落败,之后退守月城。王世充乘胜追击,把月城团团围住,他是想把月城变成李密的地狱。然而,李密来了个围魏救赵,反手直扑王世充的后方大本营黑石。大本营告急,王世充只得解除月城包围,狼狈回军援救。
结果狼狈回军的王世充遭遇李密迎头痛击,王世充大败,被斩杀三千余人。此次落败之后,王世充紧闭营门,拒不出战。直到十二月,两军再次交战,王世充大败,向西逃走。
大半个月之后,王世充偷袭李密的粮仓,不料早被李密看穿、设有防备,于是两军交战,王世充再次败走。在这之后,王世充不断攻击李密,但皆不能取胜。王世充很郁闷,觉得是自己手里的兵太少,就跟皇帝哭穷。皇帝也很慷慨,一出手又拨给他七万人。
得到兵力补充后,次年正月十五日,王世充下令建浮桥、渡洛水,再次攻击李密。王世充军攻破李密大营外围,李密军内惊恐骚动。眼看就要崩溃之时,突然号角吹响,李密率敢死队杀出,大败王世充。王世充的军队惊慌中顺着浮桥撤退,秩序混乱、坠河淹死者一万余人。
王世充侥幸逃生,但不敢返东都洛阳,带着士兵一路往北奔向河阳。不料,当夜狂风暴雨,天气骤寒,士卒渡黄河时,浑身湿透,途中冻死者数以万计。最后,抵达河阳时,王世充手下只剩下残兵败将几千人。
很快,隋朝政坛发生了巨变。大业十四年三月,宇文化及在江都叛乱,隋炀帝被杀。五月,越王杨侗继位。王世充被封为郑国公,并其他六人共同辅政。而此时,洛阳已被李密重重包围。
对于王世充和东都政府来说,宇文化及和李密都是狠角色,为了防止腹背受敌,总得拉拢一个,于是向李密抛来了橄榄枝。
那么李密呢,他也担心自己陷入两面作战,遂接受了册封,准备出兵讨伐宇文化及。果然,李密不负众望,干掉了宇文化及。
李密刚击败宇文化及,正在沾沾自喜。同时,他认为东都政府那头腐败不堪,不过是苟延残喘,曾经是自己的手下败将,现在又是盟友,所以根本不足为惧。
再说王世充,他可是从未打消干掉李密的念头。恰逢李密刚击败宇文化及,虽然胜出,但也是损兵折将。于是,王世充瞅准了这个时机,对李密发动了致命一击。