河以北都被汉赵控制。八月，刘曜逼近长安。晋朝大都督麹允、骠骑大将军索琳率兵在长安保卫晋愍帝。九月，晋朝安定郡太守焦嵩、新平郡太守竺恢、弘农郡太守宋哲都率军救援长安，散骑常侍华辑监京兆郡、冯翊郡、弘农郡、上洛郡四郡的军队驻守霸上，但惧怕汉军，不敢前进。西晋相国司马保派胡崧救援，在灵台击败刘曜，胡崧怕麹允、索琳势强，不利于司马保，于是率军驻守渭北不前，后又退守槐里。刘曜率汉军攻下长安外城，麹允、索琳退守小城。长安粮草断绝，人相食，死者大半，士卒逃亡。十一月，晋愍帝出城向刘曜投降，西晋灭亡。