二十二日,朱元璋亲自率领水师出战。但陈舰巨大,朱军舰小不能仰攻,接连受挫。这时朱元璋及时采纳了部将郭兴建议,决定改用火攻破敌。
黄昏时分湖面上吹起东北风,朱元璋选择勇敢士兵驾驶7艘渔船,船上装满火药柴薪,迫近敌舰,顺风放火,风急火烈,迅速蔓延。
一时烈焰飞腾,湖水尽赤,转瞬之间烧毁陈军数百艘巨舰,陈军死伤过半,陈友谅的两个兄弟及大将陈普略均被烧死。
朱元璋挥军乘势发起猛攻,又毙敌2000余人。
二十三日,双方又有交锋,陈友谅瞅准朱元璋旗舰展开猛攻。朱元璋刚刚移往他舰,原舰便被陈军击碎。
二十四日,俞通海等人率领6舰突入陈军舰队,勇敢驰骋,势如游龙,如入无人之境。朱军士气大振,发起猛烈攻击。
最后,陈军不支败退,遗弃的旗鼓器仗,浮蔽湖面。陈友谅只得收拢残部,转为防御,不敢再战。当天晚上,朱元璋乘胜进扼左蠡(今江西都昌西北),控制江水上游,陈友谅亦退保诸矶(今江西星子南)。
两军相持3天,陈军屡战屡败,形势渐越不利。陈友谅两员大将见大势已去,于是投降了朱元璋,陈军内部军心动摇,力量更加削弱。