永康元年(300年),司马晏与同母兄淮南忠壮王
司马允共同攻打掌权的赵王
司马伦。同年八月,司马允失败遇害后,司马伦派人逮捕司马晏交付
廷尉处置,想趁机杀死他。侍中
傅祗在朝廷上严正地为司马晏争辩,群臣同时劝谏,司马伦便贬司马晏为宾徒
县王。后来封为代王。
永宁元年(301年)六月,司马伦被杀后,司马晏的兄长晋惠帝
司马衷下诏,恢复司马晏原来的吴王爵位,并任命他为上军大将军、开府,加任
侍中。同年七月十一日,晋惠帝封司马晏的儿子司马国为汉王。
长沙王
司马乂与成都王
司马颖相互攻打时,司马乂以司马晏担任前锋都督,多次交战。
永嘉年间(307年―312年),司马晏担任
太尉、太将军。司马晏为人恭谨朴实,才能不及一般人,在晋武帝司马炎诸子中最为愚钝。年少时因受风疾,视力不正,后来加重,不能朝见。
永嘉五年(311年)六月,
汉赵将领
刘曜攻入洛阳(今河南洛阳),晋怀帝
司马炽在逃往
长安的途中被俘,司马晏与众多宗室、大臣一同遇害,时年三十一岁。司马晏的儿子晋愍帝
司马邺即位后,给父亲司马晏上
谥号为敬王,追赠为
太保。
房玄龄等《
晋书》:“为人恭愿,才不及中人,于武帝诸子中最劣。又少有风疾,视瞻不端,后转增剧,不堪朝觐。”