朋党之乱
司马道子为晋孝武帝之弟,甚受信任。淝水之战后谢安谢玄被司马道子排挤,最后相继去世,朝廷逐渐混乱,北府军后由王恭等人统率。桓冲去世后,桓家后来由桓玄领导。390年晋孝武帝对司马道子不满,遂内以王珣、王雅入廷,外以王恭任兖州刺史、殷仲堪任荆州刺史;司马道子也引王国宝及王绪抗衡,朋党乱起。
桓玄
396年晋孝武帝被贵人张氏杀,太子继立,为晋安帝。398年王恭和庾楷上表弹劾王国宝并领兵讨伐,殷仲堪遥援,吴姓世族也发民支持。司马道子畏惧,只好杀王国宝、王绪求和。之后司马道子听从司马尚之建议,任王愉江州刺史为外援。
次年王恭联合荆州刺史殷仲堪、广州刺史桓玄再度举兵。司马道子命其子司马元显为都督同王愉率军抵御。王愉被击败,联军攻至京师。司马元显收买刘牢之倒戈,王恭败死。殷仲堪与桓玄得知后退至寻阳,由桓玄任盟主,最后双方言和。朝廷为分化殷仲堪势力,任桓玄为江州刺史、殷仲堪为荆州刺史、其部下杨佺期为雍州刺史。399年桓玄杀殷杨二人,并其辖地。
司马元显担忧北府军不可靠,征江东豪族佃民以建立新军,称为“乐属”。这却使“东土嚣然”,引发民变,399年孙恩率众攻陷会稽,史称孙恩之乱。孙恩世奉五斗米道,五斗米道大受世族及平民信仰。400年孙恩扩张势力,江东豪族及五斗米道纷纷响应,江东八郡完全沦陷。401年孙恩偱海路直袭丹徒,京师震撼。刘牢之派刘裕至海盐击败孙恩,孙恩乘船而退,又被刘裕击败。402年3月孙恩为临海太守辛景所败,投海而亡。余众由其妹夫卢循领导。
谢道韫
402年司马元显为免桓玄乘乱偷袭,抢先西征,任刘牢之为先锋,司马尚之为后部。桓玄也率军东下,大破司马尚之,刘牢之认为司马元显无用而倒戈,引桓军入建康。桓玄控制朝廷,诛杀异己,先后杀司马元显与道子,夺取刘牢之兵权,诛戮部分北府将领,提拔北府将领刘裕。桓玄最初有意革新朝廷,但最后豪奢纵欲,政令无常,渐失人心。
403年桓玄篡位称帝,建国桓楚。司马遵与毛璩等起兵拥晋后,刘裕同北府旧将何无忌、刘毅举兵,收复建康,桓玄挟晋安帝西撤江陵。而后桓玄又率军东下,被刘毅击败。最后桓玄逃往蜀地,途中被冯迁所杀。桓振、桓谦又挟晋安帝反抗,直到405年肃清桓氏势力,何无忌得以迎晋安帝复位,也掌控了朝廷。