前秦內亂,建元二十年(384)三月,前秦北地長史慕容泓聞知慕容垂起兵反秦,亦收集鮮卑各部兵卒屯駐華陰,自稱都督陝西諸軍事、濟北王,宣布叛秦。慕容沖在平陽(今山西臨汾)起兵呼應。秦主命苻叡和姚萇領兵5萬攻慕容泓,叡輕敵戰敗被殺,姚萇畏罪逃奔渭北,後集結羌民數萬家,建立後秦。苻堅又命竇衝擊慕容沖,兩軍交戰於蒲坂(今山西永濟西),慕容沖兵敗後投奔慕容泓。泓因機稱帝,建立西燕。六月,苻堅攻姚萇於趙氏塢(今陝西耀縣),萇屢敗,遂與西燕合軍進攻長安。苻堅命楊壁阻擊失敗,引兵回保長安,並派苻方守驪山(今陝西臨潼),苻暉正面出擊。七月,西燕軍大破秦軍於鄭西(今陝西華縣西),再破秦軍於灞上,進據阿房宮。次年一至五月,燕秦兩軍數次交戰於長安城郊,互有勝負。符堅因身受重傷而放棄長安。六月,長安被燕軍占據。