第一条就是抓紧军队建设,提高将士作战的本领。在战事频繁的空隙中,更要抓紧粮食生产。朱元璋在义军中设置了营田司,任命康茂才为营田使,专门负责兴修水利和屯田等农业生产的事宜。而且他还抽出一些将士,利用空闲时间开荒种田。在他打下的地盘上,短短的几年的功夫不仅解决了战时粮食困难的问题,而且还有了大量的剩余,改变了历来打仗的军队靠吃军粮的习惯。这样就大大减轻了自己的负担,而朱元璋的起义军也因此得到了百姓的拥护。有了群众基础,剩下的事情就好办了。在那个时候的战争中,得到了民众的爱戴与拥护,就意味着拥有着源源不断的兵员,而这些兵员自然是那些拉壮丁的兵员无法相提并论的。但是为了避免树大招风,防止在力量脆弱时被吃掉,朱元璋在形式上一直对小明王保持臣属关系,用的还是宋政权的龙凤年号。直到朱元璋改称吴王,发布文告,第一句话仍是,“皇帝圣旨,吴王令旨。”
表示自己依然是小明王的忠诚的臣属。朱元璋经过数年卧薪尝胆,巩固的根据地终于建立起来了,在不知不觉中崛起了一支足以与元军匹敌的强大的义军队伍。当朱元璋攻下应天的时候,雄居东方的张士诚占据了太湖流域和长江三角洲的广大富庶地区。而独霸西方的徐寿辉以武昌为中心,控制了湖广、江西的大片肥田沃土。昔日还是左右逢源的朱元璋此时却处于两面夹击之中,局势相当严峻。同时,随着朱元璋军事势力的日益增强,他与各个割据政权的矛盾也日益尖锐起来。看来群雄逐鹿中原,决战天下的时机终于来到了。元至正二十年闰五月,陈友谅以派人祝贺胜利的名义,去江州(今九江)杀死了徐寿辉。陈友谅立国称帝后,马上就同张士诚合谋共同举兵,进攻应天,企图一举消灭朱元璋的队伍。陈友谅水上的军事实力相当强大。有大战舰“混江龙”、“塞断江”、“撞倒山”等一百多艘,还有数百艘战舸。真可谓大有横扫千军于万里激浪之中的气势。驻守在应天城中的文官武将,听到这个消息后,不少人慌了手脚。有的主张迎降;有的则坚持弃城转移,以保存实力;也有的要求主动迎击,决一死战,一时间各执一词,乱成一团。唯有刘基成竹在胸,静坐不语。刘基是浙东地方上的望族,很有些学问,善谋算,多方略。曾做过元朝的官吏,也抗击过红巾军。朱元璋闻其名,派人带上厚礼、书信,请他出山辅政。朱元璋称他们四人为四先生,并且专门为他们盖了一座礼贤馆,恩礼备至。敌军兵临城下,朱元璋见刘基坐视不语,料他心有妙计,便请他指教。刘基说,张士诚目光短浅,胸无大志,只图自固,未必会出兵。朱元璋问刘基,“如何打败陈友谅呢?”
“友谅兵骄,骄兵当败。但友谅兵强,敌强我弱,必须智取。诱敌深入,用伏兵邀击,定能取胜。”
朱元璋觉得刘基的话很有道理,也就采纳了他的意见,决意要伏兵智取。朱元璋连夜把木桥改为石桥,并在江东桥附近设下伏兵。陈友谅哪知是计,按老门房的话匆忙挥兵直下江东桥前。突然杀声四起,朱元璋设下的伏兵,奋勇争先,把陈友谅的队伍团团围住。张士诚慑于形势,果然不敢轻举妄动。接着朱元璋又乘胜挥师攻下安徽、收复太平和江西的许多州县,进一步扩大巩固了胜利成果。三年后,陈友谅重整旗鼓,乘朱元璋率兵安丰,解围小明王之机,前来攻打洪都(今江西南昌),以报龙江之仇。洪都紧靠赣江,是朱元璋的重要军事战略要地。洪都守将是朱元璋的亲侄朱文正。陈友谅的士兵曾几次攻破城墙,涌进城内。但又很快被朱文正的炮火击退。虽然洪都孤立无援,但在守将朱文正的率领下,士气高昂,愈战愈勇。直到七月,朱元璋率兵20万前来解围,陈友谅只得匆匆掉头迎战于鄱阳湖。鄱阳湖之役是一场关系两军生死存亡的大决战。决战的前夕,朱元璋派兵封锁了自鄱阳湖到长江的出口,扼住敌人的退路。从双方的军事实力对比来看,陈友谅号称60万,而朱军仅拥有20多万。且陈军的战船又高又大,朱军的那些数量有限的小船,必须仰着头才能望见敌人,强弱优劣是显而易见的。陈友谅进入鄱阳湖后,便把每几十艘高大战舰编为一组,用铁索联结起来。看来旌旗樯橹,望之如山,气势确实吓人,但活动起来也确实很不灵活。朱元璋发现这一弱点,就采取火攻的战术。他派出敢死士兵,驾船七艘,装着火药和芦苇,直冲敌阵,纵火焚船。霎时,湖面上风助火势,火焰冲天。这场战役持续了36个日夜,鄱阳湖上杀声不绝,震耳欲聋。战争接近尾声时,陈友谅军粮断绝。接着他左、右金吾将军又都投降于朱元璋。这样陈军锐气受挫,军心浮动。陈友谅不仅不接受将士们的意见,反而为了发泄怒火,竟下令将俘获的朱军将士全部杀掉。朱元璋闻讯后,反其道而行之,下令把他所俘虏的陈军将士全部释放,对受伤的俘虏还给以治疗。朱元璋还传令全军,今后所获俘虏,概不加害。他的这一政策,随着俘虏的来去,很快传遍了陈友谅的兵营内外,将士上下。陈兵也就更无斗志了。眼看这场战斗无法继续打下去了,陈友谅只好组织突围。他刚率兵冲至湖口,不料又遇伏兵拦截。一支飞箭射来,从眼睛正穿头颅,顿时一命归天。后来朱元璋在一次军事会议上总结决战胜利的原因时说,一靠全军将士的精诚团结,决战决胜;二靠用兵得时,善于捕捉战机,得时、得人心,此为胜利之本。鄱阳湖之役后,朱元璋的领土已扩大到长江中下游的广大地区。这样,朱元璋称王称霸的欲望也就随着膨涨起来了。他对小明王所封的吴国公称号已不满足了。不久张士诚已在苏州称吴王。朱元璋也效法之。朱元璋于1364年正月,在应天自称吴王,设置百官,建中书省,以李善长为右丞相,徐达为左丞相。因为同时有两个吴王,人们就把张士诚称为东吴,朱元璋叫做西吴。是年二月,朱元璋乘胜亲征武昌,陈理举国请降,汉政权灭亡。湖广遂划入朱元璋西吴统治的版图。朱元璋灭亡了汉政权后,又开始向新的目标挥师进军——消灭雄据东方的吴王张士诚。张士诚出身私盐贩子。他们由于不堪忍受元朝统治者的压迫凌辱,作战十分勇敢。但其领导集团没有远大目标,腐败得很。璋率军将平江城围得水泄不通。张士诚的大将吕珍、李伯升见势不妙,先后投降。平江城十分坚固,一时难以攻克。朱元璋想起了几年前海宁人叶兑献的“锁城法”,便命令士兵在平江城四周筑起长围,搭架三层木塔,登上塔顶,城里的敌人的活动看得清清楚楚。他们又在每层架起弓弩火铳和襄阳炮,日夜轰击。朱元璋在围攻张士诚的同时,派大将廖永忠去滁州假意迎接小明王到应天。渡江时,廖趁机将船弄翻,小明王溺死江中。张士诚被围九个多月,内无粮草,只好突围,但为时已晚。九月城被攻克,平江太守周仁等投降。朱元璋在进攻张士诚的同时,又制服了浙东的方国珍,平定了福建的陈友定,又乘胜南进,攻克广东、广西。朱元璋不失时机地调集精锐部队实施北伐,同元朝封建政权展开最后的大决战。朱元璋派徐达、常遇春率师北伐。大军出发前朱元璋亲自制定了一整套周密的作战计划:先取山东,拆除大都的屏障;再挥师河南,剪除其羽翼;夺取潼关,占据门槛。如此一来,天下形势已为其所掌握,然后进兵大都,元军势孤援绝,可不战而克。战争按照朱元璋的计划顺利实施了。在北伐军横扫中原,直逼大都的时候,元军却在忙于内战。待潼关失守,元顺帝才慌忙调集正内战不休的扩廓帖木儿 (王保保)、李思齐的队伍,南下迎战。腐败的元军那里还有战斗力,元顺帝眼见大势已去,深夜带着后妃太子狼狈逃往上都(今内蒙多伦)。第二年八月,徐达统领大军攻进大都,统治达99年的元朝政权宣告败亡。至正二十八年(1368)正月,正当北伐军胜利攻克山东的时候,四十岁的朱元璋在文武百官的欢呼声中,于应天正式登上帝位,国号大明,建元洪武,以应天为南京。立妃马氏为皇后,世子标为皇太子。仍以李善长、徐达为左右丞相,刘基为御史中丞兼太史令。就这样,一个横笛牛背的牧童,经过艰苦奋斗,终于成了我国历史上继刘邦之后,又一位出身布衣的开国君主。