正当唐政府边兵内调,把主要力量用于平定安史之乱的时候,西方的吐蕃,党项就乘机向东发展势力,凤翔(今陕西凤翔)以西,邠州(今陕西彬县)以北的地方,已失去控制。郭子仪看到这种危机的存在,曾建议不可忽视这方面的问题,但都没引起代宗的重视。
广德元年(763)九月,吐蕃开始东进,边将向朝廷告急,宦官程元振置之不理,根本不向代宗报告。吐蕃顺利东下,很快到达泾州(今甘肃泾川),泾州刺史高晖投降,并引吐蕃深入内地,一直过了邠州(今陕西彬县),代宗始有所闻。吐蕃继续东进至奉天(今陕西干县)、武功(今陕西武功西),京师震动,代宗才命雍王李适为关内元帅,郭子仪为副元帅,出镇咸阳(今陕西咸阳东)。郭予仪久居京师,手下没有军队,临时凑集了二十余人到咸阳,面对二十余万敌军,当然难以有所作为。他派人向皇帝告急,由于程元振从中作梗,也未能见到代宗。
吐蕃逼近长安,代宗仓促出奔陕州,郭子仪循秦岭而东,沿途收容唐军散兵,驻军在商州(今陕西商州)。他认为从商州出蓝田(今陕西蓝田),吐蕃自然不敢东进,代宗在陕州也就安全,于是,代宗没再坚持调他东去陕州的意见。郭子仪派长孙全绪率二百骑出蓝田,观察敌情。
长孙全绪白天击鼓张旗,虚张声势;夜间多处燃火,使吐蕃不解其意。同时,还有数百人于夜间在长安城中击鼓呐喊,还发出郭子仪将率大军到来的消息使吐蕃惶恐不安。在这四面楚歌声中,吐蕃感到无力控制长安,只得撤兵西去。
十二月,代宗回到长安,郭子仪等到浐水以东迎接。代宗羞愧的对郭子仪说:「用卿不早,故及于此。」自此以后,郭子仪的声望更高了。
平定仆固怀恩,又是郭子仪的一大功绩。安史之乱结束后,仆固怀恩率朔方兵驻屯汾州(今山西汾阳)。
河东节度使辛云京怀疑仆固怀恩与回纥有勾结,遂向代宗密奏仆固怀恩欲反。仆固怀恩受到猜疑,有诏书也不敢进京。当代宗征求除去仆固怀恩之策时,有人建议:仆固怀恩所统之兵皆郭子仪旧部,如果派郭子仪去统领这支军队,仆固怀恩就一筹莫展了。
代宗遂命郭子仪为关内、河东副元帅、河中节度使。仆固怀恩感到危在旦夕,遂举兵反唐。他进攻太原失败,带三百人逃往灵州(今宁夏灵武)。
郭子仪到了汾州,仆固怀恩所部,皆鼓舞涕泣,喜其来而悲其晚。仆固怀恩到了灵州,勾结回纥、吐蕃,大举内进。郭子仪奉命出镇奉天(今陕西干县),在干陵之南大败仆固怀恩。永泰元年(765)九月,仆固怀恩再次勾结回纥、吐蕃内进。
仆固怀恩中途暴病而死,郭子仪用分化手段,拉拢回纥,共击吐蕃,迫使吐蕃退兵。
所以说安史之乱结束的时候在位的皇帝是唐肃宗。