防备战。司马颖带领所属各支兵马袭击他们,与他们在水展开激烈战斗。孙会等人惨败,临阵丢下军队向南仓皇逃窜。司马颖乘胜长驱直入渡过黄河。
自从司马等人起兵,朝廷文武百官以及禁军将士都想诛杀司马伦和孙秀,孙秀非常胆怯,不敢离开中书省。等到听说河北的军队战败,忧郁烦懑不知所措。孙会,许超、士猗等人逃回来后,与孙秀商议,有的提出聚集剩余的兵力去交战。有的提出焚毁皇宫殿堂,诛杀不听从自己的人,挟制司马伦南逃,投奔孙、孟观。有的还提出乘船东行入海。但没有高议出结果。辛酉(初七),左卫将军王舆和尚书广陵公司马,带领七百多兵士从南掖门进入皇宫,三部司马在里面为内应,在中书省向孙秀、许超、士猗发起攻击,把他们全杀了。于是又杀了孙奇、孙弼及前将军谢等人。司马是司马的儿子。王舆在云龙门驻守,召集朝廷八个部门的高级官吏都进入宫殿,让司马伦下诏书说:“我被孙秀等人所害,因此激怒三亲王。现在已诛杀孙秀。要迎接太上皇恢复皇位,我则归田养老。”传诏官用驺虞幡命令将士解除武装。宦官把司马伦从华林园东门带出,和太子司马一起都送回到汶阳里府第,派遣几个武装兵士到金墉城迎接惠帝。百姓都呼喊万岁。惠帝从端门进宫,登上宫殿,大臣们都跪拜叩头请罪。诏令把司马伦、司马等人送到金墉城。广平王司马虔从河北回来,到达九曲,听说朝廷的变故,就离弃军队,带几十人回归自己的府第。
癸亥(初九),宣布赦色天下,改年号为永宁。诏赐臣民聚饮五天。分别派遣使者去慰劳司马等三个亲王。梁王司马肜表奏:“赵王司马伦父子凶暴叛逆,应当处死。”丁卯(十三日),派遣尚书袁敞持符节赐司马伦死,拘捕他的儿子司马、司马馥、司马虔、司马翊,全部处死。文武百官中凡为司马伦任用过的全部贬斥罢免,台、省、府、卫各部门留任的官员所剩无几。当天,成都王司马颖到达。己巳(十五日),河间王司马到达。司马颖派赵骧、石超到阳翟去帮助齐王司马讨伐张泓等人,张泓等人全部投降。自从战事爆发,六十多天。有近十万人在战争中丧命。接着在东市杀张衡、闾和、孙髦,蔡璜自杀。五月,诛杀义阳王司马威。襄阳太守宗岱遵照司马的檄文杀孙,永饶冶令空桐机杀死孟观,都将首级送到洛阳,并夷杀孙,孟观三族。