后唐建立的同时,仍面临着严峻的形势。契丹不断侵扰幽州,兵锋直逼河北。潞州守将李继韬叛附后梁,梁将董璋急攻泽州,意图吞并昭义镇,直接威胁后唐西都太原的安全。李存勖为了扭转战局,决定趁梁军东面防守空虚之机,出兵奇袭郓州,以切断梁军右翼,再伺机进图汴州。李存勖命李嗣源率五千步骑,连夜冒雨渡河,一举袭破郓州,朱友贞听闻郓州失守,命王彦章率军阻止唐军西进,李存勖命朱守殷严守德胜,自率亲军进屯澶州。
王彦章出兵杨村渡,攻克德胜南城,继而顺河东下,攻打杨刘城。他打算先隔断河北唐军与郓州的联系,再图收复郓州。而李存勖则命朱守殷放弃德胜北城,装载军需器械浮河而下,协助李周固守杨刘城,两军各自沿河一岸疾进,边行边战,互有胜负。不久,王彦章进抵杨刘城下,挥军强攻,昼夜不息,并以巨舰九艘横亘河津,阻拦唐军增援,他屡攻不克,只得退屯城南,筑垒连营,以阻击唐军渡河。
李存勖亲临杨刘,一面命唐军出营挑战,牵制梁军兵力,一面命谋臣郭崇韬领兵奔赴博州,在黄河东岸修筑新城,以接应郓州唐军。王彦章率军急攻博州新城,还用十余艘巨舰置于黄河中流配合作战,郭崇韬据城坚守,李存勖亦率军自杨刘增援。王彦章只得撤军,退保邹家口。李存勖与郓州李嗣源重新恢复了联系,王彦章复攻杨刘,再次被唐军击败,遂撤师西归,退保杨村,不久便被召回汴州,段凝接任主帅。
朱友贞部署四路反击:命段凝攻澶州、董璋攻太原、霍彦威攻镇州、王彦章攻郓州,打算在十月向后唐发动总攻,但因兵力分散,造成汴州防守空虚。他还命梁军掘开滑州南面的黄河大堤,以阻止唐军进攻汴州,但同时也将梁军主力阻隔在决河以北。梁将康延孝投降后唐,将后梁军情尽数告知李存勖,建议唐军趁虚袭取汴州,而李嗣源则在郓州附近大败王彦章,俘获梁军将校三百余人,迫使梁军退保中都。
李存勖自杨刘渡河,进抵郓州,并以李嗣源为前锋,攻破中都,俘杀王彦章。当时,诸将都认为应先攻占兖州等地,再乘机而动,李嗣源则坚持趁虚袭汴的战略。李存勖命李嗣源率前军倍道兼程,向汴州进发,李嗣源抵达汴州,挥军攻城。朱友贞自杀,梁将王瓒开城投降,李存勖于同日抵达,由大梁门进入汴州,后梁正式灭亡。
梁晋争霸期间,南方还存在很多割据政权,其中前蜀据有三川(指剑南西川、剑南东川、山南西道),定都于成都,其国主称皇帝,与后梁分庭抗礼。后主王衍在位时,奢侈淫靡,大兴土木,委政于宦官、狎客,纵容太后、太妃卖官鬻爵,致使朝政败坏,贪腐成风,还在国内四处巡游,强制沿途州县供应食宿,百姓苦不堪言。后唐灭梁,威震天下,岐国、楚国、吴越国、闽国、南平国等割据政权纷纷入贡称藩,前蜀却不肯臣服,李存勖便有意讨平前蜀。
客省使李严出使前蜀,趁机刺探蜀中虚实,他归国后极力主张伐蜀,称蜀国已有亡国之象,更坚定了李存勖出兵灭蜀的决心。当时,前蜀为了防御后唐,在两国边界驻有重兵,李存勖又遣使者李彦稠入川,表示要与蜀国修好,以此麻痹王衍。王衍信以为真,派翰林学士欧阳彬为唐蜀通好使,出使后唐,同时还撤除了边界守备。
李存勖以魏王李继岌为主帅,统领六万大军,征讨前蜀。李继岌年幼,军务皆有副手郭崇韬决断,唐军以康延孝、李严为前锋,连克威武城、凤州、兴州等地,缴获大批粮草。而与此同时,王衍仍在国内巡游作乐,到达利州时方知唐军来犯,他急忙组织三万兵马迎战,却被唐军击溃于三泉,前蜀各处藩镇纷纷来降,王衍仓皇逃回成都。
前蜀中书令王宗弼发动政变,囚禁王衍、后妃及诸王,自称西川兵马留后。他以王衍的名义邀请李严到成都,商谈投降事宜,李严驰入成都,抚慰前蜀官吏、百姓,命蜀军撤去成都的军事防备。不久,李继岌率大军进抵成都。王衍率百官出城拜降,前蜀正式灭亡,南方诸国皆惊惧不已。
魏博戍卒在贝州哗变,推裨将赵在礼为首领,攻入魏州。邢州、沧州也相继发生兵变,河北大乱,元行钦带兵进讨,但却连连失利。李存勖本欲亲征,被宰臣劝阻,只得起用李嗣源,让其率侍卫亲军北上平叛,李嗣源在魏州城下遇到亲军哗变,被劫持入城,与叛军合势。他本无反意,但迫于内外形势,又无以自明,只得率变兵南下。
李存勖亲自率军东征,欲坐镇汴州指挥平叛,但李嗣源已抢先占据汴州,得到大批唐军将领拥戴。李存勖知道局势已不可挽回,行至万胜镇便下令回师,仓皇返回洛阳,他再三抚慰士卒,许以厚赏,但已为时太晚,士卒均不感皇帝恩德,沿途逃散过半。当时,李继岌已率征蜀大军班师,途中因平定后军康延孝叛乱,被耽误了归程。
李存勖决定前往汜水关,与李继岌会合,再联兵进剿李嗣源,他命扈从军兵候于宫门外,自己在内殿进食。从马直指挥使郭从谦突然发动叛乱,率所部攻入兴教门,李存勖亲率宿卫出战,杀死数百乱军,最终被流矢射中,死于绛霄殿,时年四十三岁。
伶人善友将乐器覆盖在李存勖身上,纵火焚尸,李继岌军至渭南,因部属溃散,被迫自缢而死。征蜀大军则在副使任圜的率领下,归附李嗣源,李嗣源进入洛阳,在李存勖灵前称帝,史称后唐明宗。李嗣源将李存勖葬入雍陵,上庙号庄宗,追谥为光圣神闵孝皇帝。