桓玄西逃至江陵回到老家。他在自己的大本營收集兵士,得到二萬多人,船隻器械等都很充足。這時他一掃敗逃的陰霾,膽子又壯了起來。自言道“我乃大楚皇帝,這些西楚將士們世受我家厚恩,今番我重整旗鼓,帶領他們前去征戰,定能扭轉乾坤,復我社稷!”於是挾晉帝整衆順流東下,時又刮西風,樓船蔽江,如同水上堅城般向前推進。桓玄信心滿滿,不可一世。五月上旬,與劉毅之軍相遇於崢嶸州。
劉毅與劉道規等一路克復城池,增兵添將,統衆亦不過八千。面對着二萬多大軍,從未歷經過的陣容,諸兵士人人面懷懼色,連劉毅都不由得有些膽怯,大家商議破敵之策。當時劉裕令劉毅爲諸軍總指揮,然劉道規與何無忌等共預建義,名望又都不在劉毅之下,但凡戰陣之前劉毅都要與他們商議後再行定奪。
劉毅率先說道“敵方兩萬多大軍,桓玄又親來,我軍軍士人人驚恐,怕難以一戰啊!不若退還尋陽再做打算。”道規說:“絕對不可!彼衆我寡,如果我們畏懦不進,必會爲敵所乘,即使能至尋陽,也難以固守!桓玄雖竊名雄豪,已是數敗之餘,衆無固心。決機兩陣,將雄者克,不在衆也。昔光武昆陽之戰,曹操官渡之師,皆以少制多,大家共所聞。我雖纔不及古人,但亦不甘示弱。”言畢劉道規帶自己部下先進。
正行駛間,劉道規忽然看到旗幟轉向,原來是風向變了,大喜道“有了!”當時兵船都備有硫磺硝石等燃火用具,只是數量不多。於是劉道規就選出十餘隻船,將火石等都集中到這些船上,令敢死士數十人駕駛,準備火攻。勇士們駕駛十餘隻船順風猛往前衝,劉道規與何無忌、劉毅、孟懷玉孟龍符兄弟帶衆繼進。看着近敵船了,將船點燃,衝向敵船。勇士們跳入水中游到了自己的軍船上。敵船紛紛起火。劉道規等趁勢急攻,晉軍又取燃燒之船的火種,點燃火箭火把,射向扔向未燃之敵船。火借風勢越燒越猛,瞬間成了一片火海。
桓玄部衆雖多,經年不習戰鬥,桓玄又在樓船之側準備一輕舸以準備失敗逃走,因此衆人鬥志不固。在火勢與兵勢的猛烈攻擊下,桓玄軍隊迅速落敗。激戰之際,孟懷玉一箭射中了桓玄所乘之樓船的旗杆,主帥旗落下,更讓桓玄心驚膽裂。此時已大戰一個多時辰,紅日西沉。桓玄戰船多數被燒燬,所統兵士死於鋒鏑者,死於烈火者,死於溺水者,遍江皆是。江水因之流速減緩。可憐桓玄生前最後一戰敗得如此之慘,多年經濟一夕成空!他恨恨地嘆道“悔不聽夫人之言,使奴輩養成勢力。”桓玄單身乘輕舸帶着晉帝逃走。時晉軍軍中有令,不得妄射桓玄逃船,怕誤傷了晉帝。晉軍只能追擊,不及而返。
桓玄得以逃回到江陵。桓玄怕追兵不日來臨,想到桓希還保有着漢中地,便決定投奔漢中。他連夜佈置處分,準備出發時,想不到因爲自己的失敗使得城中人心大亂,不少人聚集起來攻擊桓玄。司馬德宗趁亂逃離桓玄,桓玄來不及尋找,於亂中慌忙帶家屬與親信百餘人乘馬狼狽出城。在出城門時,還有人在暗中拿刀砍玄,傷腿及馬腹。賴卞範之等部下拼死相救,桓玄才得以出門。經此一番陣亂後,桓玄身旁隨從只剩數十人了。
這時桓玄蔘軍毛修之忽然說道“我已送信與我伯父毛璩,他希望陛下能夠入蜀,再奪天下。估計他所派出迎接我們的人現在已經在路上了。”當時益州刺史毛璩鎮守着蜀地。毛修之因精通音律爲桓玄所善,跟隨桓玄多年。桓玄聽後大喜,帝心不死的他,心想蜀地富裕,強於漢中數倍。即便不能稱霸天下也能割據稱雄,便欣然應允。夫人劉靈玉趁毛修之不注意時向桓玄耳語道“你此時已經一無所有,有親不投卻要託身異姓,恐怕死在旦夕!我看那毛修之腦滿腸肥,賊眉鼠眼,估計是想拿你的頭去請功。”桓玄不聽,“他跟我多年,我待他不薄,不會背叛我的。”收拾一番後,桓玄一行人來至江邊上船。
船行至枚回州,碰巧遇到一支有百餘人的船隊。毛修之說道“是我伯父派我侄兒毛佑之前來相迎。”桓玄心喜過望。兩方船隊逐漸靠近,忽然毛修之跳入了水中,游到了毛佑之的船上。桓玄正自不明所以之時,毛佑之已經下令衆人往桓玄船隻上射箭。一時箭如雨下,桓玄隨從一個個倒下,卞範之身中數箭倒入水中。桓玄正驚慌之際,看到一支箭正往其子桓昇身上飛來,已離身很近,揮刃撥開已來不及。危急時刻,他一下子撲了過去,用身子爲兒子擋了一箭。桓昇大哭“父親,父親,你還好嗎?”箭中桓玄肩膀。看箭勢緊急,桓玄所寵優伶丁先期、萬蓋等圍住桓玄,以身擋箭,瞬時披矢如棘,盡皆死去。而桓玄也得以帶家屬數人將船靠到枚回州岸邊,登上了州。
毛修之與毛佑之帶數十人上岸追趕。很快桓玄等人被圍,此時桓玄身旁除了妻子劉靈玉與兒子桓昇,只有桓石康、桓浚、庾頤之三人了。毛修之輕蔑的笑道“皇帝陛下,路走到了頭,皇帝做夠了沒?”桓玄嘆道“值此亂世,哪個有雄心的男人不想稱王?自古以來,成王敗寇。成,爲人稱頌;敗,爲人唾罵。自然之理也。天要亡我,我亦無可奈何!只是想不到我養你多年,卻在我危難時刻背叛我!今番我命該絕,希望你能看我這幾年待你不薄的份上,向司馬皇帝求情饒我幼子一命!”毛修之說道“我把你兒子交給皇帝,能不能活,那得看他的造化了!”說完便向馮遷使了個眼色。