再与安守忠、李归仁交战于香积寺（今长安县西南）之北，回纥兵绕到敌人后方，前后夹击，杀敌六万人，张通儒逃往陕郡，最后收复首都长安（今陕西西安），唐军威仪再度得以重现长安。其后，唐军乘胜东进，于新店（今河南三门崃市西南）大败严庄、张通儒等十五万人，迫使安庆绪渡黄河，退回相州。东都洛阳复归。以功加司徒，封代国公。史思明从范阳率军救安庆绪，双方大战于安阳河（今安阳北）北列阵接战，厮杀难分难解，最后由九个节度使率领，号称六十万人的唐军退溃（邺城之战）。此场战役的主要指挥者宦官鱼朝恩，其并无领导才能，并将战役失败之