大都督麴允心地宽厚,威严不够,做事也不果断,拉拢人的主要手段就是授予官职。新平太守竺恢、始平太守杨像、扶风太守竺爽、安定太守焦嵩,全都被授予“征”“镇”将军的名号,持节,加侍中、常侍;各寨堡的寨主堡主也都有将军的称号。但对于地位低下者,他的恩惠则远远不够,因此造成了上层骄横、下层离心的局面,晋军的战斗力更加不够看。

建兴四年(316)七月,刘曜率军包围晋北地郡太守麴昌,麴允率领三万兵马前去救援。刘曜命兵士绕着城墙纵火,浓烟滚滚,遮蔽天日,营造出一副战事正酣的样子,然后派奸细欺骗麴允说:“城池已经被刘曜攻陷,您现在赶过去也已经来不及了。”麴允的部队听到后十分惶恐,不敢向前,继而四散奔逃,刘曜趁机加大进攻力度,一举占领了北地郡。

刘曜继续前进,到达泾水(渭河的支流)以北地区,渭水以北的晋方各城池纷纷崩溃,建威将军鲁充、散骑常侍梁纬等人被俘。刘曜早就听说鲁充是一位才子,见面后特别赐给他酒道:“我得到了先生您,何愁不能平定天下!”但鲁充回答:“我身为晋朝的将军,国家蒙难不敢苟活。如果要我蒙受您的恩德,请立即赐我一死!”刘曜看他态度坚决,赞赏他“真乃义士”,成全了鲁充,让他自尽。

刘曜杀死了梁纬,但见梁纬的妻子辛氏非常漂亮,就准备纳她为妾。辛氏趴在地上大哭,后仰起头对刘曜说:“我听说男人为国捐躯,他的女人就不能再嫁。如今我的丈夫死了,我也不能独活。请您立即让我去死,到地下去侍奉我的公公婆婆!”然后继续痛哭不止。刘曜叹息道:“这是个贞洁烈女啊,随她的便吧。”辛氏也自杀身亡。

建兴四年(316年)八月,刘曜进逼长安,只有寥寥的几个属于晋朝的郡发兵来救,但都畏惧汉赵兵强马壮,只是远远观望,不敢上前。相国司马保派遣胡崧率领精锐部队救援长安,在长安城西攻打刘曜,刘曜第一战失利。这本是个好机会,但胡崧却打起小算盘,他怕再次击败刘曜后,朝廷的声威将重新振作,麴允、索綝的势力会更为强大,这样会对相国司马保不利,于是就率领部队屯驻在渭水北岸不再进发,随后又回师槐里(今陕西兴平市东南)。

刘曜琢磨过味儿来了,原来晋军各怀鬼胎,不是真想救援,于是他催促手下士兵一举攻克长安外城,将麴允、索綝逼到小城固守,彻底切断了长安城内外的联系。这时候长安城中缺粮的情况更加严重,一斗米的价格涨到了二两黄金,城内饿死过半,开始出现人吃人的事情。城中百姓纷纷逃亡,连士兵也开始偷偷逃跑,根本制止不住,只有凉州张氏派来的援兵一千人还在坚守。皇家的太仓里也只剩几十个酿酒用的酒曲饼,麴允把饼弄碎了做成粥给晋愍帝喝,但不久这些饼也吃完了。

建兴四年(316)十一月,愍帝司马邺流着泪对麴允说道:“现今困苦到如此地步,又外无援兵,实在走投无路。和社稷共存亡本来是我的本分,然而想到城破后将士会受到酷刑对待,我就不忍心。我打算忍受奇耻大辱,开城投降,让将士、百姓免受荼毒。你马上写降书吧,我意已决。”然后他派侍中宗敞向刘曜递交降书。

十一月十一日,晋愍帝司马邺**上身,口衔玉璧,拉着棺材,乘坐羊车出长安城东门投降。晋朝的文武大臣放声痛哭,上前紧紧拉着司马邺的手,司马邺也悲痛万分。司马邺见到刘曜后,起身叩拜,刘曜把他搀扶起来,接受了玉璧,但命人烧了棺材,并派人侍奉着司马邺回宫。

后来,刘曜把司马邺等人送到了汉赵都城平阳。至此,建国五十一年的西晋正式终结。