。”于是命诸将出战。到了中午,还没有决出胜负,李光弼便派爱将郝廷玉、论惟贞分别攻击最顽强的西北、东南两处叛军,并下令:“你们都看着我的旗子作战,如果我的旗子挥动缓慢,就任凭你们择利出战,如果我急速往地上挥动旗子三下,你们就全军齐发,冒死前进,稍有退者斩!”他事先在靴内藏刀,说:“战斗,是危险的事。我身为国家的三公,不能死在贼人手上。万一作战不利,诸君在前战死,我在此地自刎,决不只让诸君单独赴死。”郝廷玉奋命先登,流矢雨集,他的战马受伤而退,李光弼登城望见,惊骇地说:“郝廷玉败退,我军就完了!”
于是,命左右取郝廷玉首级来,郝廷玉见使者前来,说:“是马中毒箭,不是兵败了。”李光弼命人为他换马再战。仆固怀恩与其子仆固玚作战稍有退却,李光弼又命左右去取他们的首级,仆固怀恩父子看见使者提刀骑马而来,重新上前决战。李光弼不断地挥动着手中的旗子,诸将冒死进攻,呼喊之声惊天动地,最终大败叛军。此役,唐军斩首一万余级,生擒八千余人,获马两千匹,军资、武器数以亿计,周挚仅以身免,叛将徐璜玉等被擒获,另一叛将安太清退守怀州。河阳之战再次表现了李光弼杰出的军事才能,此战的胜利牵制了史思明主力军,保障了潼关和长安的安全。
此时,史思明不知周挚等已经战败,还在攻河阳南城,李光弼在河边向其展示俘虏,史思明才退去。他趁势攻怀州,史思明来救,李光弼迎击于沁水之上,又将其击败,安太清在怀州拒守一月有余,李光弼令仆固怀恩、郝廷玉由地道而入,里应外合,攻克怀州,安太清等被生擒,送往朝廷。
肃宗轻信宦官鱼朝恩“言贼可灭”的进言,于是令李光弼尽快收取洛阳,但李光弼多次上表认为,叛军兵锋尚锐,应该等待时机出兵,不可轻举妄动。但朔方节度副使仆固怀恩依附鱼朝恩,也建议尽快出兵,在朝廷使者的督战下,李光弼无可奈何,只得留李抱玉守河阳,自己与仆固怀恩、鱼朝恩进攻洛阳。仆固怀恩不听李光弼军令,不在洛阳城北邙山而在平原布阵,致使大败。李抱玉听闻败讯,放弃河阳,李光弼也退守闻喜。
史思明虽然获胜,却被其子史朝义杀死,唐军也因此得以休整,肃宗将邙山之败归罪在仆固怀恩身上,于是优诏征李光弼入朝。李光弼进京后,抗表请罪,被肃宗赦免,因他多次辞让太尉,故朝廷重授李光弼为开府仪同三司、侍中、河南尹、行营节度使,后再拜河南副元帅、太尉兼侍中,统率河南、淮南、江南、浙江等八道行营节度,出镇临淮,进攻史朝义军。
监军使以台州人袁晁,领导的浙东义军势大,李光弼兵少,请他退保润州以避叛军锋芒,李光弼说:“朝廷安危系于我一身,现在敌人虽强,但不知道我的兵力多少,如果我出其不意,敌人自当退走。”径直前往泗州,旋即先克许州,活捉史朝义部将李春,再入徐州。当时,大将田神功平定刘展之乱后,滞留在淮南不前,尚衡、殷仲卿等在兖、郓两州相互攻击,来瑱不听朝廷诏令,坚持留在襄阳。朝廷深感忧虑,等到李光弼到了许州后,史朝义退走,田神功急忙返回河南,尚衡、殷仲卿、来瑱等都畏惧李光弼的威名,相继入朝觐见。
李光弼进封为临淮郡王,旋即派兵收复许州,斩得叛军首级一千余级,擒获叛将二十二人。史朝义分兵进攻宋州,易州遂城府左果毅刘昌率军坚守,李光弼领军救援,将其击退。李光弼又派部将张伯仪等率领各军,向袁晁义军发起攻势,唐军在衢州击败义军。江南人方清在歙州率饥民起义,朝廷命李光弼分兵讨伐。
史朝义走投无路,自杀身亡,历时八年之久的安史之乱平息,李光弼自始至终参加指挥大军,一直是唐军平叛主将之一,发挥了出色的军事才能,指挥唐军歼灭叛军有生力量,为平息内乱立了头功