司马炽23岁做皇帝,他为人正直,谦恭谨慎,加上学识渊博,还是一个很有才华的皇帝,朝臣民众都对他充满希望。不过他的学识兴趣集中在考究经史典籍上,加上长年钻研书本,也缺乏实际的统治经验和魄力。在西晋已经动乱的末世,他根本无法力挽狂澜。
在八王之乱的十几年间,不仅晋朝国力大大损耗,而且许多内迁的少数民族,如匈奴、鲜卑、羯、羌等,他们不甘臣服,也纷纷趁机反抗。到了公元308年,匈奴贵族刘渊在平阳(今山西临汾)称帝,并纠集各方势力,公开与晋为敌。曾被晋军打败的羌族石勒和王弥也投奔了刘渊。公元309年,石勒率兵10多万人几次攻打洛阳,几乎破城。公元310年十月,石勒与王弥、刘曜等又率兵攻打洛阳。洛阳城内兵尽粮绝,怀帝司马炽只得下诏号召各地发兵勤王。可是由于司马越专权,不得人心,加上各地也有暴乱,王侯将领们自顾不暇,最后竟然没有一支队伍来救援。
公元311年二月,怀帝司马炽为了挽回人心,保住洛阳,就与大臣荀遹密谋诛杀司马越,并且发出诏书讨伐。结果司马越得到消息,命人缴获了诏书,于是双方公开宣战。不过司马越在三月就病死了,他的部下王衍带着他的灵柩回东海郡国安葬,结果在路上被石勒堵住。石勒杀了王衍带的10多万人,还将司马越剖棺焚尸。驻守洛阳的何伦是司马越的部下,听说司马越死了,就带着司马宗室和余部向东海封国撤退,结果碰上石勒,也全被杀了。此时洛阳城中粮草用尽,四处都有匪兵劫掠,已经到了人吃人的地步,文武百官都逃走了十之八九。司马炽也想趁乱逃走,可他身边连侍卫都没有了。他带着几个随侍宦官跑出西掖门,就遇到盗贼抢劫,只好又返回宫中。六月,洛阳城被石勒等人攻破,怀帝司马炽被俘。匈奴人四处杀人抢劫,宫中财物也被抢空。他们还把晋朝几个皇帝的陵墓也盗掘了,又放火烧毁了整个洛阳城。魏晋以来,耗费无数人力物力,历时百年才建成了一代名城,被他们完全焚毁了。