公元306年,通缉抓捕成都王司马颖,被抓后被处死。
公元307年,晋惠帝暴毙,河间王司马颙被诱骗处死。
晋怀帝改元永嘉,大赦囚犯,废除诛三族刑。太傅、东海王司马越辅政,掌握了朝廷大权。至此,东海王司马越在八王之乱中成为了最终的胜利者。
永嘉三年(309),匈奴两次进攻洛阳,被击退。
永嘉五年(311),东海王司马越病死,匈奴在宁平城之战中歼灭晋军主力,杀晋太尉王衍及诸王公,随即第三次进攻洛阳并将之攻破,俘获晋怀帝,杀王公士民三万余人。
建兴四年(316),刘曜又攻入长安,俘晋愍帝,西晋灭亡。