至德二载正月,叛军10万围攻太原。李光弼大智大勇,以少胜多。郭子仪夜渡蒲津,收复河东,控制冲要。继而击退叛军反攻,德定阵脚,进图两京河东郡(山西永济)南阻黄河,与憧关、陕县相望;北连汾晋(山西临汾)通往太原:向西渡河可达同(陕西大荔)、华(陕西华县),与关中互为表里,是控制关河山川的冲要之地。自古天下有事争雄于关中者,莫不以河东为咽喉。在河东郡所对黄河西岸,有蒲津关。玄宗开元十九年(731),于蒲津关两岸开东、西门,各置铁牛四尊,维系浮桥。安禄山起兵之初,唐军据陕县、关阻遏叛军,即以河东郡为特角郭子仪于至德元载(756)十二月剿平了河曲地区的同罗等诸胡叛乱之后,即引军南趋洛交(陕西富县),准备进兵河东。郭子仪认为先行占据河东,就有利于收复两京。他的这一军事计划,自然是按照肃宗先复两京的意图行事至德二载正月底,郭子仪派宗族子弟郭怀文招募豪杰勇士,得郭俊、苟文俊等人,作为密使潜人河东,与陷人叛军中的唐朝官员接头联络,相约等待唐军进攻时作为内应。河东郡司户韩晃、河东县司士徐灵、永乐县(山西丙城西南)县尉赵复和皇室子弟李锋等人,早已密谋反正归唐驻守河东的叛军将领,就是半年前在关打败哥舒翰的崔乾佑。此人勇善战,但骄奢淫逸。其部下兵士,残忍好杀,多行不法。河东百姓痛恨叛军残暴,翘首盼望官军前来解救。
二月上旬,郭子仪率朔方军从洛交南下,向河东进发,并于途中分兵攻取了冯(陕西大荔)。十一日夜晚,韩晃等人前来蒲津桥接应郭子仪,徐灵、李锋、赵复和郭俊等人,在城内举火起兵,杀死守城叛军1000余人,打开城门,迎接唐军。
崔乾佑深夜闻变,慌忙用绳索溜下城墙,逃到北面的废城处。这里还驻有一支叛军。崔乾佑分出3000兵马反攻郡城,自己带领步、骑兵5000人埋伏在蒲津关城中。郭子仪派次子郭叮和猛将仆固怀恩等人在前迎敌,自引大军继后。叛军急忙纵火焚桥。唐军将士奋勇争先,一边冲锋杀敌,一边灭火保桥。叛军抵挡不住,溃败而退。崔乾佑带残兵连夜逃奔安邑(山西运城东北),叫开城门。当其一半人马进人城内时,城门突然关闭。原来,安邑的官员和守军已经反正归唐。进人城内的叛军全部被杀死。崔乾佑幸亏在后,未及人城,急忙掉转马头,向西南方向狂奔,从白径岭(山西运城解州镇东)逃命而去郭子仪大军杀敌4000人,生俘5000人,收复了河东郡。
二十二日,郭子仪派郭叮、仆固怀恩、兵马使李韶光、大将王作等人渡河打破渔关,杀敌500余人。叛将安守忠在永丰仓(陕西华阴东北)筑垒固守,郭子仪派郭吁等将率军前去攻打,唐军歼敌1万余人,郭叮英勇阵亡。唐军收复永丰仓,打开了渔关东西两侧的通路。
安庆绪闻报河东、关相继失守,急派援兵前来争夺,两军遂于渔关展开激战。至拙毛,唐军失利,李韶光和王柞奋勇力战,先后阵亡,士卒损失1万余人。仆固怀恩退至渭河边,无舟揖可渡,抱着马头浮水而过,奔还河东。
三月下旬,叛将安守忠率2万骑兵,自关中前来争夺河东。郭子仪指挥朔方军击退叛军,歼敌1万余人,稳定住了河东的局势。
就在郭子仪谋划进取河东的同时,李光弼在太原同优势的叛军展开了一场空前激烈的守卫战。至德元载十二月,重新控制了河北地区的叛将史思明,计划先攻取太原,再下朔方,摧毁肃宗新朝的复兴根据地。叛军分四路进兵,史思明自博陵西人井隆1蔡希德自上党(山西长治)下太行,高秀岩自大同军(山西朔县)向南,牛廷价自范阳继后,共计10万兵力,人寇太原。
这时,李光弼部下唐军只有1万人左右,而且大多是军事素质不高的团练兵,形势十分严峻。太原的将领们大为恐慌,建议整修城池以为凭借。李光弼大智大勇,军令严整,先后使用了飞石大炮、开掘地道通到叛军营中、邀击烧毁叛军运来的攻城器具、亲率敢死队突击等灵活多变的战术,打退叛军一次又一次的凌厉攻势天寒地冻,滴水成冰。史思明围攻太原,月余时间未能得手,而洛阳方面又发生了宫廷政变。叛军士气低落,人心惶惶。
安庆绪杀父自立后,传令史思明归守范阳,巩固后方。史思明遵命撤退,留下蔡希德等人继续围攻太原。
李光弼侦知叛军内部分裂,人心不稳,遂于二月中旬开城发起反攻,大破叛军。蔡希德带着残兵狼狈逃走,沿途又被各县的武装民众拦截攻击,损失惨重。太原保卫战共歼敌7万人,不仅粉碎了史思明的战略计划,而且,对郭子仪胜利实施进取河东的作战方案,提供了极为有力的保障。