桓玄的檄文傳到京師,司馬元顯見後倒也大吃一驚,沒想到桓玄會主動進攻,心中萬分忐忑。但是這把火是他點起,也隻能硬著頭皮出征迎戰。東晉皇帝司馬德宗親自設宴為其餞行。司馬元顯率軍登船駛向北岸,船到江邊,他卻遲遲不敢下船,他擔心自己的部屬不是江陵桓玄兵的對手。
與司馬元顯的膽怯相同,桓玄也是進展緩慢。他也在擔心,如果一旦戰敗該如何收拾殘局。直到過了撏陽,還沒見到一個官軍的影子,膽子始覺壯了許多。待到姑熟,競然同司馬元顯的後軍遭遇。雙方倉促交戰,桓玄的先鋒把司馬尚之在陣前斬落馬下,桓玄首戰告捷。
司馬元顯的官軍,其主力還是劉牢之的北府兵。但劉牢之對司馬元顯始終都是三心二意。特別是安帝為司馬元顯餞行的禦宴上,劉牢之被安排在較為靠後的位置,劉牢之當時就氣滿胸膛。因而在桓玄同司馬尚之大戰時,劉牢之拒不出戰救援。
桓玄對於劉牢之的態度心中猶如明鏡一般,他感到有機可乘。因為劉牢之的舅父何穆,在他帳中為幕賓,遂派何穆為說客,前往劉牢之大營勸降。何穆見到外甥,鼓動三寸不爛之舌:“牢之,自古以來,戴震主之威,挾不賞之功,而能自全之人又有誰呢?越國的文種,秦國的白起,漢朝的韓信,無不是在功成後被殺。你當下的處境是,戰勝則傾宗,戰敗則覆族,又何不翻然悔悟,長保富貴呢!”
“舅父所言極是,牢之願聽教諱。”
“桓玄大將軍引大軍進發,你隻要按兵不動,桓大將軍便足以擊潰司馬元顯。待桓大將軍取得朝政大權,定給你加官晉爵。”
“甥兒就照舅父指教,與桓大將軍結盟,共圖富貴。”
何穆離開後,劉牢之的部將劉裕、何無忌全都反對劉牢之的做法。劉牢之的兒子劉敬宣也勸諫說:“桓玄猶如東漢之董卓,朝之大奸,萬萬不可投靠。”
劉牢之勃然大怒:“你們懂得什麼,桓玄是何種人我豈不知。我現在是用桓玄對付司馬元顯,待日後他二人兩敗俱傷,我再吃掉他們,這晉朝的江山,不就順利地歸我所有。”
次日,桓玄派人來送信,邀請劉牢之過營赴宴。劉牢之擔心一去不返,再三斟酌後,派兒子劉敬宣替他前往。桓玄本打算借宴會之機除掉劉牢之,見是劉靜宣到來,隻好改變主意,依然大擺宴席,順勢把劉敬宣留在營內,大軍全速前進向建康進發。當司馬元顯得知桓玄大軍已抵新亭,而劉牢之根本未予抵抗時,明白大勢已去,棄軍隊於不顧,獨自乘船逃回建康。主帥一走,大軍隨即潰散。桓玄引軍兵不血刃進人京師,司馬元顯被活捉,桓玄下令將司馬元顯及其親信一黨盡數斬首,俘獲司馬道子流放出城,桓玄暗中指使押解的公人,於途中把司馬道子毒亡。
政敵除去,桓玄自封太尉、都督中外諸軍事,如今,司馬德宗這個傀儡被桓玄完全掌控。這時,桓玄想到了劉牢之是他的心腹之患,首先得解除他的兵權。桓玄頒旨,命劉牢之改做會稽內史。
劉牢之明白,這削去兵權隻是第一步,第二步就是要他的性命。劉敬宣僥幸從桓玄處逃回,他力主父親出奇兵襲擊桓玄。劉牢之集將佐議事,提出攻其不備偷襲桓玄。
參軍劉襲言道:“人生在世最忌再三反叛,將軍一反王恭,二叛司馬元顯,如今又要叛桓玄,三叛其主,難有好的下場。請恕在下不能相伴,我要另尋生路,望將軍好自為之。”言畢,劉襲揚長而去。士卒們見參軍出走,登時散去大半,軍心為之動搖。
當時,劉裕統兵在京口,劉毅在廣陵,何無忌在新亭,劉牢之身邊幾無可戰之兵。他明白難逃桓玄的毒手,便自縊而死。劉敬宣見狀,化裝出城,逃往北魏。