公元913年11月到12月,李存勖率军攻占了幽州(今北京),此举标志着河北地区几乎完全归晋所有。这一年的同时,后梁的凤历元年,恰逢后梁末帝朱友贞在位,朱友珪继位。
李存勖攻占幽州后,立刻开始为消灭后梁做准备。他积攒粮草、调兵遣将,组织全面进攻后梁的军事部署。然而,他屡次受到后梁名将杨师厚的阻碍。杨师厚是北面招讨使和天雄军节度使,节制魏博三镇之兵,驻守魏州(今河北大名),兵力精锐,后勤充足,攻防兼备,成为李存勖南下的一大障碍。
与此同时,北方的契丹(辽)逐渐崛起,不时侵犯晋境,威胁着晋的背后。李存勖不得不两面作战,导致军力分散,战果有限。直到乾化五年(915)三月,后梁的名将杨师厚因病去世,魏州爆发了兵变。暂时接管杨师厚兵权的将领张彦,因实力不足,未能成功平定变乱,只得求助于李存勖。李存勖意识到这是千载难逢的机会,果断决定与契丹和解,全力进攻后梁。六月,与契丹达成协议后,李存勖亲自率领大军直奔魏州。
在贞明四年(918),李存勖率军自杨刘(今山东东阿北的杨柳镇)出发,趁着雨夜悄然渡过黄河,在濮州(今山东菏泽甄城县北)与后梁将领谢彦章的部队遭遇,双方经过数次交锋,始终未能分出胜负。
年末,李存勖发现与后梁军长时间僵持不下,便下令将军中的老弱伤兵撤回魏州,选拔精锐部队准备与后梁展开决战。此时,后梁郓州的将领卢顺前来投降,并提供了重要的情报:
“郓州守军不过千人,守将暴虐,民心尽失,可派兵袭取。” 《新五代史》
李存勖欣喜若狂,立即命猛将李嗣源带领五千精兵,沿黄河北岸快速行进,趁夜秘密渡过黄河,直指郓州。后梁守军毫无准备,迅速溃败,郓州陷落。失去郓州后,后梁的都城大梁(今开封)失去了屏障,形势岌岌可危。
李存勖得知李嗣源攻克郓州后,命令各路大军齐头并进,绕过后梁的防线,直扑大梁。梁将谢彦章率兵紧随其后。李存勖的大军行进至临濮(今山东甄城西南)的胡柳陂时,谢彦章的军队紧追不舍,几乎逼近。
周德威将军建议李存勖暂时按兵不动,自己带偏师骚扰梁军,使敌军夜不能安,以消耗敌军体力后再发动全面进攻。李存勖拒绝了他的建议,亲自带领主力冲入敌阵。后梁军兵力众多,队形密集,李存勖的军队左冲右突,经过激烈的战斗,双方面临胶着的局面。梁军迅速将李存勖及其卫队团团围住,并趁机劫掠晋军的粮草。晋军陷入混乱,周德威英勇作战时不幸阵亡。
中午时分,李存勖指挥军队拼死突围,杀出一条血路后,迅速集结溃散的部队,准备继续作战。此时,许多将领感到极度恐惧,纷纷请求暂时撤兵休整,次日再战。李存勖愤怒地喊道:
“此时收兵,等同投降,眼下是生死存亡之际,不能后退,一切就看这一战!” 《五代史》
晋军的步兵损失惨重,所幸骑兵损失较少。李存勖带领军队抢占了周围的制高点,并用骑兵轮番冲击梁军。战斗持续至傍晚,梁军疲惫不堪,最终败退。胡柳陂的战场上,尸横遍野,血流成河,场面惨不忍睹。这场战斗中,双方总共损失了十万余士兵。
史书记载,胡柳陂的激烈战斗使晋军和后梁双方的损失都超过了三分之二,可以说是两败俱伤。
经过这场残酷的战斗,李存勖意识到无法一举消灭后梁,于是决定撤回魏州,留下大将李存审镇守已占领的河南城镇及各个战略要地。
在胡柳陂恶战后的两三年中,晋与后梁在黄河沿岸进行领土争夺,尽管没有爆发大的战斗。到了龙德三年(922)四月,李存勖在各方的劝进下,于魏州登基称帝,国号大唐,史称后唐,年号同光。
10月3日,李存勖命李嗣源为先锋,亲率大军从郓州出发,直指开封。第二天清晨,后唐军团消灭了围攻郓州的后梁军,活捉了负伤落马的后梁将领王彦章。王彦章是后梁的猛将,擅长使用双管铁枪,号称“王铁枪”,作战时异常勇猛。李存勖欲招降他,但遭到拒绝,最后将其斩首。至此,郓州到开封一带的后梁重兵已被扫除,后梁的防线全面崩溃。
当晚,李嗣源率数千先锋急速行进,李存勖紧随其后,攻城如破竹,几乎没有遇到有力的抵抗。10月10日清晨,后唐大军的先锋已经来到开封城下。后梁末帝朱友贞惊慌失措,紧急召集群臣商议。然而,他发现众大臣早已逃散,连忠诚且足智多谋的老臣敬翔也无影无踪。国难当头,朱友贞痛哭流涕,但无力挽回局势。
李嗣源准备指挥攻城时,后梁的守军竟然不战而降,举白旗,开城门投降。当天下午,李存勖率领主力赶到,顺利进入开封,后梁这个由朱温建立的政权,至此彻底灭亡,退出了历史舞台,存在了17年的后梁也宣告结束。