陈友谅果然亲自率领水军顺流东下,先到大胜港,打算从这里登陆。可是这里的港口很窄,大船开不进去,而且发现朱军早有准备,就急忙掉转船头,直接驶往江东桥。到了近前,一看是大石桥,不是木桥,陈友谅不禁大吃一惊;接着按照约定信号,连喊“老康!”又没人答应。陈友谅这才恍然大悟,自己受了康茂才的骗,赶紧指挥部队撤退。
正在这时候,突然战鼓雷鸣,朱元璋的伏兵一齐杀出,从水面和陆地夹击陈友谅军。陈友谅军被打了个“冷不防”,想战不得,想跑不能,被杀死、淹死的不计其数,被俘虏的有7000多人,被打沉和俘获的大型战舰100多艘,中、小型战船数百条。陈友谅在部将保护下,换乘一条小船溜走了。
朱元璋指挥大军乘胜追击,收复了太平(今安徽省当涂县),接着又攻下了安庆(今安徽省安庆市)、袁州(今江西省宜春县)和江州(今江西省九江市)等地,占据了江西的许多州县和湖北东南部。陈友谅只得逃回武昌。