公元362年七月,謝安率八萬水師,兩萬步騎沿淮河南下,直取采石磯,遙指京口。
八月初,晉將劉毅率軍迎戰,兩軍戰於采石磯以西十裏外水麵。
謝安機智,趁占據上風之勢,在戰船上點起濃煙。濃煙順風而下,晉軍頓時視線不明,艦隊互相碰撞,亂做一團。謝安趁機放下數十條大型火船,晉軍措不及防,被焚毀者無數。
謝安趁機揮軍掩殺,大敗劉毅。劉毅見不敵,率殘軍東遁,欲逃回采石磯。
此時,十九歲的謝玄早領一支伏兵從一則河汊中殺出,截斷劉毅歸路。劉毅見前後無路,自刎而死,殘兵皆降。
謝安、謝玄領軍東進,一番血戰,順利奪取了天險采石磯,直指京口。
公元362年八月中旬,謝安圍困京口,與庚冰大戰。
庚冰無謀,被謝安以巨木火船撞開水寨,全殲其水師。然後,無後顧之憂的謝安水陸齊發,合圍京口。
雙方大戰半月,戰況異常激烈,城頭數次易手。
八月底,晉帝司馬聃病死,健康大亂,江南震動。由於司馬聃無子,晉室一時無主,諸王激烈爭位之下,朝政大亂。無奈何,群臣隻能奏請太後褚蒜子再度臨朝,以壓製亂局。
褚蒜子見京口危急,急派大將王坦之領兵二萬救援京口。王坦之非善用兵之人。被謝玄於路設伏,殺得大敗而回。
九月初旬,荊州全境失守消息傳至,建康大亂,百姓逃散者無數,諸臣多有異心。褚蒜子不愧為女中豪傑,為了穩住朝政。急以司馬聃堂兄司馬丕繼皇帝位,是為東晉哀帝。又見京口危急。健康不寧,火急召集天下兵馬勤王。
九月中旬,得知荊州大捷的謝安水陸大軍備加勇猛,曆經一月猛攻,終於攻克了京口重鎮。冉魏大軍隨軍順流下下,直取健康城。
九月下旬,謝安合圍健康城。