司马元显率兵抵抗但屡战不利。面对如此险境，司马道子别无他法，只有每天在蒋侯庙祷告。只因刘裕击溃孙恩，以及司马尚之和刘牢之及时回军才逼使孙恩北逃，京师得以解危。
败于桓玄.元兴元年（402年），司马元显讨伐桓玄，司马道子获授侍中、太傅，并将骠骑将军府中幕僚都移到太傅府。不过桓玄顺江南下抵抗，击败了司马尚之，刘牢之又背叛了司马元显，令司马元显兵众溃败。司马元显随后问计于司马道子，但司马道子唯有对其哭泣。桓玄随后掌握朝政，杀司马元显及其党羽，又流放司马道子到安成郡。至同年十二月庚申日（4