西晋第二个皇帝晋惠帝在位时,统治阶级内部,发生了一连串的政治残杀和战争。从291年起,先后有八个诸侯王,为争夺中央权力而相互攻杀,历时16年之久。历史上称这次战乱为“八王之乱”。
“八王之乱”爆发于晋惠帝时,祸根却在晋武帝司马炎时就埋下了。
晋朝建立后,司马炎认为,曹魏政权所以被司马氏篡夺,是因为曹氏不分封同姓诸侯王,皇室缺乏屏藩的缘故。于是,便在265年,大封皇族27人为王。这些诸侯王都有封地,拥有武装,而且,王国内的大小文武官吏都由诸侯王自己选任。不少诸侯王还兼领中央或地方的军政大权。这样,各诸侯王国,就形成了晋朝内部的强大割据势力。
当时,异姓士族以杨、贾两家最为显赫。杨家是弘农郡的大姓,晋武帝的皇后杨艳就出自杨家。杨艳生惠帝。她临死时,又推荐从妹杨芷嫁给武帝为皇后。杨芷的父亲杨骏也被超升为车骑将军。杨氏的声势压倒其他异姓士族。惠帝的皇后贾氏,是贾充的女儿。260年,魏帝曹髦进攻司马昭时,贾充杀死曹髦,在司马氏篡魏过程中立过功劳。司马炎称帝后,贾充被升为侍中尚书令、车骑将军,深受武帝宠信。杨、贾两家都各树党羽,扩充权势。这样,西晋的祸乱便首先从宫廷里发作起来了。
290年,晋武帝病死,晋惠帝继位。惠帝是个白痴。武帝死前,诏汝南王司马亮与外戚杨骏共同辅政。杨骏和女儿杨皇后伪造诏书,由杨骏独揽了政权。
贾后也是个凶狠、贪暴的女人。惠帝即位,贾后也想独揽大权。杨太后和杨骏就成了她的最大障碍。291年,贾后与宫中的侍从官阴谋策划,密召楚王司马玮带兵进京。司马玮进京后,顿时全城戒严。贾后挟惠帝下诏杀死杨骏和杨氏党徒几千人。杨太后也被逼身死。
杨氏集团被消灭后,汝南王亮人朝辅政。楚王司马玮因协助贾后政变有功,也以卫将军领北军为中侯,在中央握有兵权。
亮、玮之间因而发生矛盾。贾后认为亮、玮二人都妨碍了自己专权,便又施展手段,先下诏叫楚王玮杀死汝南王亮,然后又以“矫诏”伪造诏书的罪名,杀掉楚王玮。
贾后杀掉亮、玮二王后,大树自己党羽,专断朝政达八九年。299年,贾后与太子司马通的矛盾又爆发了。太子遹是惠帝长子,不是贾后所生,随着年龄增长,对贾后一伙的专横跋扈,渐露不满之意,引起了贾后的妒忌。这一年,贾后废掉太子遹。
太子无罪被废,引起一部分拥护太子的朝臣不满。300年,他们与当时握有军权的赵王司马伦密谋废贾后,复太子。赵王司马伦当即答应参与行动。但是,他平素与贾后亲密,害怕太子复立会对自己不利,于是,一面行使“反间计”,挑动贾后用毒药害死太子遹,一面又借口为太子报仇,领兵入宫,废掉贾后。贾氏党羽也被一网打尽。
赵王伦利用贾后和太子的矛盾,一箭双雕将贾后和太子尽皆除掉,夺得政权。第二年,索性废掉傀儡惠帝,自己做起皇帝来。
赵王伦自己称帝,马上激起其他宗室诸王的反对。齐王司马同联合成都王司马颖、河间王司马颐等起兵讨伐赵王伦。赵王伦也调兵遣将迎战。双方的军队在洛阳附近酣战了两个多月,死亡近10万人。结果,赵王伦兵败被杀。齐王司马同辅政。但是,不久,河间王司马颐联合在洛阳的长沙王司马义,又对司马同发动进攻。同、义双方军队,在京城展开激战。一时,洛阳城内飞矢如雨,火光冲天。双方混战三日,齐王同兵败被杀,长沙王义掌握了政权。
303年,司马颐又联合成都王司马颖,杀掉司马义,打败司马越,控制惠帝,掌握了中央权力。
305年,东海王司马越再次起兵攻打司马颐。司马颐联合司马颖率军反击,结果战败逃走。
306年,司马越的军队攻入长安,把惠帝又劫回洛阳。在这一年,司马颖、司马颐先后被司马越的势力杀死,惠帝也被司马越毒死。司马越另立惠帝的弟弟司马炽为帝,是为晋怀帝。司马越独掌了晋朝大权。到此为止,“八王之乱”才告结束。
“八王之乱”是西晋士族势力恶性发展的产物,也是封建统治阶级凶恶、险毒、残忍、腐朽等本性的一次集中暴露。本来西晋统一后,由于战乱减少,人民兵役、徭役负担相对减轻,在劳动人民辛勤劳动下,晋武帝太康年间280~289社会上曾经呈现一些繁荣景象。“八王之乱”中,生产遭到新的破坏,人民又重新陷入苦难深渊。西晋王朝也在这场群兽狂斗、自相残杀中走向灭亡。历史又进入了一个新的混乱时期。