这一仗打得陈友谅大伤元气。朱元璋的声势却越来越大。陈友谅哪肯甘心,他养精蓄锐,决心要报这个仇。过了三年,他造了大批战船,又带领六十万大军,进攻洪都(今江西南昌)。朱元璋亲自带领二十万大军援救洪都,陈友谅才撤去包围,把水军全部撤到鄱阳湖。朱元璋把鄱阳湖出口封锁起来,堵住敌人,决定跟陈友谅在湖里决战。陈友谅的水军有大批战船,又高又大,一字儿排开,竟有十几里长;朱元璋的水军,却尽是一些小船,论实力比陈友谅差得多。双方连续打了三天,朱军都失败了。部将郭兴跟朱元璋说:“双方的兵力相差太远,靠打硬仗不行,非用火攻不可。”朱元璋立刻命令用七条小船,装载着火药,每条船尾带着一条轻快的小船。那天傍晚,正好刮起了东北风,朱元璋派了一支敢死队驾驶这七条小船,乘风点火,直冲陈友谅大船。风急火烈,一下子就把汉军大船全部延烧起来,火焰腾空,把湖水照得通红。陈友谅手下的将士不是被烧死,就是被俘虏。陈友谅带着残兵败将向鄱阳湖口突围。但是湖口早已被朱元璋堵住。在陈友谅突围的时候,朱军一阵乱箭,把陈友谅射死。朱元璋消灭了南方最大的割据势力陈友谅以后,自称吴王。自从刘福通牺牲以后,朱元璋把小明王接到滁州,名义上还接受小明王的领导。到了这时候,他做皇帝的思想膨胀起来,觉得留着小明王对他是个障碍。公元1366年,他用船把小明王接到应天,趁小明王在瓜步(今江苏六合东南)过江的时候,派人暗暗凿沉了船,把小明王淹死。第二年,朱元璋消灭了张士诚割据势力,接着,命令徐达为征虏大将军,常遇春为副将军,率领二十五万大军北伐。过了两个月,徐达的军队旗开得胜,占领了山东。公元1368年正月,朱元璋在应天即位称皇帝,国号叫明。他就是明太祖。明军乘胜进军,元兵节节败退。这年八月,徐达率领大军直捣大都,元顺帝逃往上都。统治中国九十七年的元王朝终于被推翻。