八王之乱期间,司马氏在地方上影响力顿减,地方势力不断膨胀,外族陆续叛变独立,李成与汉赵先后独立。氐族李雄在益州逐渐势大,最后于306年称帝,国号成,史称李成。304年王浚遣匈奴领袖刘渊回并州发兵支援,刘渊乘机宣布独立。308年刘渊称帝,国号汉,后称前赵。晋室在八王之乱后面临一场覆亡危机。
八王之乱后,刘渊遣子刘聪掠夺洛阳,大将石勒及王弥则掠夺关东各州。310年刘渊死,子刘和继立,不久刘聪杀和自立。311年石勒出兵襄阳,晋廷派遣大军讨伐,但因朝廷与主将司马越互相猜忌,晋军内乱,最后被石勒袭击,精锐尽亡。当时洛阳空虚,刘聪乘机攻陷并掳去晋怀帝,史称“永嘉之祸”。313年怀帝被杀,晋愍帝于长安继立,汉赵派刘曜持续攻打。316年晋愍帝投降,最后受辱被杀,至此西晋亡。而后,匈奴、氐、羯、鲜卑及羌等族,陆陆续续在北方建立了一系列国家,史称“五胡十六国”。