宸濠圍攻安慶,相持了半個多月都不能攻下。忽然接到南昌被圍的消息,不免心慌意亂,急忙下令撤兵相救。李士實進諫:“南昌的守兵勢單力薄,敵不過王守仁,我們如果回去救援,恐怕已經來不及了。”宸濠問:“丞相的意思是繼續攻打安慶?”李士實說:“這也不必。照我看來,何不直取南京,即位稱尊?那時再傳檄天下,大江南北就容易平定了,還怕江西不服?”宸濠沉思了半天沒有采納,隻說:“南昌是我的根基,金銀財寶都在那裏存著,我要是沒了這些積儲,軍需怎麼供給?現在無論如何,也要去救南昌,先顧全根本,然後再作別的打算。”李士實隻好默然退去。
宸濠見李士實退出,馬上率領將士登舟,逆江而上,直達阮子江口。然後又先派兩萬精兵去救南昌,自己帶著大兵作為後應。先鋒隊順風揚帆,進逼黃家渡,遠遠看見前麵已有戰船,分兩隊排列,船上的旗號在前麵的是“伍”字旗,在後麵的是“餘”字旗。宸濠的前鋒仗著順風順勢,鼓噪前進。伍、餘二人假裝交戰,不到幾個回合,就匆忙逃去。宸濠聽說前鋒得利,也率眾跟上,隻可惜前軍與後軍隔得太遠,前後不能相顧。邢珣奉了密計,繞到敵軍先鋒隊後麵,衝殺過去。敵軍來不及防備,頓時慌了手腳。前麵的伍、餘兩軍,又反身殺來,一陣掃蕩,把敵船擊沉無數。宸濠遠遠看見,急忙命令各船增援。不料左右兩邊各聽得一聲炮響,左邊殺出的兵船上,懸著“徐”字旗號;右邊殺出的兵船上,懸著“戴”字旗號。兩路官兵攔腰截擊,宸濠顧東失西,顧西失東,撞舟折舵聲、呼號慘叫聲攪成一片。伍、餘的軍隊掃蕩完前麵的敵船後,來援助徐、戴。四五路官兵夾擊宸濠,宸濠異常驚慌,隻好下令逃跑,好不容易才從重圍中衝出一條血路,向東逃生。官兵趕了幾十裏,奪下無數船隻兵械,這才收兵。
宸濠退到八字腦,泊船休息,正對著黃石磯。宸濠見磯勢險要,就問左右:“這磯叫什麼名字?”左右都說不知道,這時有一小兵是饒州人,熟悉地形,就上前說:“此地名叫黃石磯。”宸濠勃然大怒:“你敢譏笑我?”話音未落,已經拔出佩刀,把小兵殺死。劉養正急忙去問:“大王為什麼要殺那小兵?”宸濠還帶著怒氣,悍然道:“他說這是王失機,難道這磯已經知道我失敗了?這明明就是取笑我!”劉養正說:“他說的黃字,是黃色的黃,不是大王的王,他說的石字,是石板的石,不是失敗的失,磯字與失機的機字也不相同,大王千萬不要誤會。”宸濠這才知道誤殺了小兵,便令將士將小兵的屍首拖到岸上埋了。隨從的各將士見宸濠如此昏庸,料定大事難成,紛紛離去。
宸濠正在愁悶,忽然接到軍報,王守仁已經派知府陳槐、林椷等人攻打九江,派曾璵、周朝佐等人攻打南康。宸濠大驚失色:“曾璵是建昌知府,是不可多得的良才,他也幫助王守仁去攻南康嗎?如果南康、九江被他奪去,我豈不是沒有土地了?這可怎麼辦?”劉養正說:“事已至此,就不必說了。現在隻有振作軍心,再打一仗。如果能戰勝王守仁,還有機會奪回南昌。”宸濠於是下令,將士們率先效命的賞千金,突陣受傷的賞百金。賞令一下,士兵們果然摩拳擦掌,鼓舟再進。
還沒走多久,就遇到了官兵。兩下接仗,宸濠的將士和之前大不相同,刀槍並舉,炮弩頻發,靠著一股銳氣直撲官兵。官兵竟被他們殺死數百名,開始向後退去。伍文定統領全師,看到這種情形,急忙躍上船頭,抽出佩劍,把臨陣退縮的士兵砍死五六名,又把令旗一揮,掩殺上去。當時烏雲密布,黑煙漫天,拳頭大的火星,一顆顆飛入伍文定的船中。伍文定毫不膽怯,仍然挺身矗立,督軍死戰。忽然間火星爆裂,彈到伍文定的臉上,將伍文定的連鬢長須燒去了一半。伍文定用手一拂,沒有絲毫驚慌。官兵見主將如此鎮定,毫不怕死,不由得振奮起來,紛紛衝上前去。宸濠見一時不能取勝,也撥船突陣。不料一炮射來,正中他的坐船,把船頭擊得粉碎,江中的波浪隨著震蕩,旁邊的戰船都搖動起來。宸濠急忙逃到別的船上,部下頓時潰散,紛紛逃去。
宸濠吃了第二個敗仗,懊惱得很,馬上收拾殘兵敗將,集成一個方陣,將船隻連起來防守,並將全部的金銀拿出來,犒賞將士。王守仁得知消息後,馬上派人給伍文定遞去書信。伍文定打開一看,上麵沒有別的話,隻有“急用火攻”四個字。李文定說:“我也正有此意。”
這個時候,宸濠正在召見部下,準備將臨陣脫逃的頭目斬首示眾。可這些頭目都是些盜匪,誰肯枉送自己的性命?於是一哄兒爭辯起來。這時,探子忽然來報:“官兵來了!官兵來燒我們的船了!”宸濠聽了,大驚失色,急忙出去看。隻見前後左右已經是火勢炎炎,燒得正旺。當時正值秋天,江上的秋風吹來,火仗風勢,越躥越旺。官兵乘著火勢,紛紛跳上敵船。宸濠在船頭,呆呆地望了很久。隻見邢珣從左路殺來,戴德孺從右路殺來,餘恩攻後,伍文定攻前,自己部下的將士紛紛投水,毫無抵禦的能力,不禁大哭:“大事去了!”正說著,副舟已經著火,嚇得宸濠幾乎暈倒,慌忙走入船艙,與妃嬪等人相對痛哭。正妃婁氏站起來說:“臣妾之前曾多次勸阻殿下,不要辜負國恩,殿下不肯答應才會有今天。罷!罷!殿下負了皇上,臣妾卻不忍心辜負殿下。”說完,疾步走到船頭,奮身一躍,投入水中。妃嬪們見婁妃殉難,又聽得畢畢剝剝的聲音越來越近,料定難以逃生,便各自打開船艙,投水自盡了。宸濠滿臉淚水,帶著兒子儀賓呆呆地在舟裏坐著。官兵從四麵躍上,將宸濠父子用最粗的鐵鏈捆綁妥當,牽到船外。宸濠放眼一看,所有的丞相、元帥都已經兩手反翦,捆在船中。彼此欷歔長歎一番,閉目等死。伍文定等人將叛黨一一鎖住,沒有漏脫一個,如李士實、劉養正、徐吉等共有幾百人。擒斬叛兵三千多人,溺死約三萬人,燒死、逃走的不計其數。溺水的浮屍積聚江上,綿延好幾裏。