安禄山是居住在今天辽宁朝阳的胡人,据说他的祖先是从今伊朗迁移而来。安禄山通多门民族语言,年轻时在边境市场充当突厥与唐朝互市的中介人。安禄山贿赂使臣,献媚皇帝,博得玄宗的信任,因此不断加官晋爵。到天宝十年(751年),安禄山已成为平卢、范阳、河东三镇节度使,掌握了今河北、辽宁西部、山西一带的军事、民政及财政大权,具备了称霸一方的实力。而在安禄山起兵之前,他却丝毫没有被玄宗怀疑,即使天宝十四年,安禄山已露出了叛乱的马脚,但自信的玄宗还表示:“禄山对我推心置腹,肯定不会谋反!”
安禄山在安抚玄宗的同时,却在马不停蹄地做叛乱准备。他大规模修筑城池,豢养同罗、奚、契丹降人8000名组成自己的亲兵卫队,大量购买马匹、囤积粮草、购置武器。天宝十四年二月,他获准在自己的辖区里以32名蕃将代替汉将,至此,安禄山的准备工作就绪了。由于安禄山与宰相杨国忠不和,他害怕朝廷先发制人,遂于同年十一月九日,以讨杨国忠为名,发动了叛乱。
这场叛乱,唐朝政府没有丝毫准备,所以安禄山进军速度很快。十二月十二日,就攻占了东都洛阳,并向长安进发。此时的唐朝中央,乱作一团,京城周围兵力很少,调动军队就花了许多时日,又急调大将火速回京护驾。唐军初战不利,高仙芝、封常清等大将都因战败被杀,皇帝的御驾亲征也没有成行。而这时的战争出现了片刻的喘息,那就是安禄山于天宝十五年(756年)正月初一,在洛阳称大燕皇帝,因此放慢了战争的节奏,给唐军在潼关一线集结兵力创造了条件。在接下去的半年里,双方一直在争夺潼关。因为潼关是进入长安的大门,潼关失守,长安必然不保。但六月九日,安禄山的军队还是攻占了潼关。于是,唐玄宗不得不携带文武百官、后宫、宦官等,于六月十三日逃离了长安。六月十四日,当玄宗一行到达马嵬驿时,随行部队发生了哗变。军队将士认为此次叛乱全都是由杨国忠而起。当大家看到杨国忠与吐蕃使臣谈话的时候,就有人喊:“杨国忠与蕃人谋反啦!”众军士怒火中烧,将杨国忠斩首。而这时大家又在想,杨国忠能权倾朝野,原因何在?很自然,兵士们想到了杨国忠的妹妹——杨贵妃。愤怒的士兵认为唐玄宗之所以废弛朝政、贪于享乐,杨国忠之所以小人得志、惑乱朝廷,最根本的原因就是杨贵妃。因此,将士们群情激奋、山呼海啸,要求唐玄宗处死杨贵妃。这让老皇帝始料不及,他很难在江山与美人中间做出取舍,但玄宗最后舍弃了美人,将杨贵妃缢死。这才平息了哗变,使大队人马最终得以到达成都。
而就在此时,另一件事也让老皇帝非常吃惊,那就是七月,太子李亨于宁夏灵武即位,是为肃宗,尊玄宗为太上皇。这是公开的夺权行为,可对于出逃在外、无计可施的玄宗来讲,他只能听之任之。至此,唐玄宗基本退出了历史舞台,于762年忧郁地病逝于长安宫中。
在唐朝内部发生权力更迭的同时,安禄山集团内部也发生了较大的变化。至德二年(757年)正月,安禄山被其子安庆绪所杀,乾元二年(759年)三月,部将史思明又将安庆绪杀死,自称大燕皇帝。上元二年(761年)三月,史思明又被其子史朝义杀死。叛军内部出现的内讧,为唐军平叛创造了有利条件。肃宗即位后,一边任命大将郭子仪、李光弼等率兵平叛,收复失地,另一方面又迅速从河西、北庭、安西节度使处调兵增援。此外,肃宗还向回纥、于阗、西域等少数民族政权借兵,参加战斗。在叛军的控制区,如河北等地,由于叛军的残暴统治,百姓自发组织起来,反抗安、史的统治。