元璋24岁那年的5月,汝颍红巾军在河南首先举起义旗,武装反抗元朝的黑暗统治。刹那间,河淮江汉之间一片通红。8月,萧县(属安徽)人李二、彭大、赵均用等人起兵,据有徐州。罗田(属湖北)人徐寿辉,起于大江之滨,在蕲水(今湖北浠水)建立起“天完”政权。天下大乱,沸沸扬扬。
到第二年的3月中旬,濠州城(在今凤阳北)也让红巾军占领了,头目是郭子兴、孙德崖和姓俞、姓鲁、姓潘的一伙人,都称濠州节制元帅。前来镇压的元军,怕红巾军厉害,不敢攻城,就到附近的村庄里抓人,给包上红布,算作俘虏,向上官报功请赏。老百姓给元军害苦了,纷纷躲进濠州城,投靠红巾军。元璋一见这情势,心里盘算着去路。虽然他也相信弥勒出世,穷苦人出头日子快要到来的话,但濠州城里五个元帅各自主张,谁也不服谁,跟他们走,怕风险太大,去不得;而留在寺里,早晚要给元军捆住请赏,性命不保,又留不得。正在犹豫间,元军将于觉寺一把火烧了,元璋见寺里是无论如何留不得了,便下了决心,向菩萨磕了头,投奔郭子兴去了。
元璋在4月15日投到郭子兴手下当了一名红巾军战士。他长得身材高大,黑脸盘,高颧骨,大鼻子,大耳朵,粗眉毛,下巴比上聘长出好几分,脑盖门上一块骨头突出,像个小山丘,整个脸型就像一个竖立着的立体形山字。样子不太好看,脸上还有几颗麻子,却很匀称,显得威严而沉着,见过他的人,都忘不了他那个怪长相。他很有主意,办事稳当。不久,郭元帅就看上了他,调他到帅府当差。当了一名亲兵九夫长。元璋还粗通文墨,上级来的文告,元帅颁的命令,大家都找他解说。他做事谨慎,又敢作敢为。打仗时身先士卒,得了战利品一概上交元帅,得了赏赐,又推说功劳是大伙儿的,公公平平分给同出去的战友。平时说话不多,却句句有斤两。几个月后,在军中树立了好名声:勇敢、能干、大方、有见识、讲义气,人缘好。郭元帅看在眼里,乐在心里,觉得当初没有认错人,更是把元璋当作心腹体己,不时和他商量事情,言听计从。造反打天下,第一重要的是人才,何不把养女马氏嫁给他,招为上门女婿,当作自家人。这样,元璋便平白作了元帅的女婿。从此军中改称他为朱公子,有了身份,起一个官名叫元璋,字国瑞。
10月29日,元军攻破徐州城,李二被俘遭杀害。赵均用、彭大率部逃到濠州。濠州五帅势力都不及他们,于是屈己事人。彭大有智谋,敢作敢为,与郭子兴气味相投。孙德崖与郭子兴素有矛盾,便想了一个借刀杀人的法子,拿话来挑拨赵均用,说郭子兴眼皮浅,只认得彭将军,百般讨好,对将军却白眼看待,瞧不起人。赵均用大怒,即时派孙德崖领兵,在大街上冷不防把郭子兴绑架了,弄到孙家毒打一顿,准备将他杀了。朱元璋当时正出差在外,闻讯后火速返回。他料想子兴素厚彭薄赵,祸必自赵发,要解这个结,非彭大出头不可,他于是与子兴二子一起到彭大处央告。彭大听了,勃然大怒说:“他们太胡闹了,有我在,谁敢害你们元帅!”立刻喊左右点兵,元璋也全身披挂,带兵团团围住孙家,掀开屋瓦,救出子兴。赵均用见彭大出了头,怕伤了和气,只好隐忍了事。
当时元军攻被徐州后,即进围濠州。大敌当前,红巾军的头目们才暂时放下嫌怨,合力守城。濠州被围了7个月,红巾军损失很大,而元军也日久疲敝,军无斗志,到次年6月中旬,元军主将贾鲁暴卒,便解围他去。乘解围的机会,子兴命元璋回乡募兵。少年时的伙伴和乡里徐达、周德兴、郭英等人听说元璋做了红巾军的头目,都来投靠,不几天就招到了700人,子兴大喜,升元璋做镇抚。
这年冬天,彭大的儿子彭早住自称鲁淮王,赵均用自称永义王,早早树起了招风大旗,而郭子兴、孙德崖等五人仍是节制元帅。旗号尽管很大,但彭、赵所部暴横,毫无纪律,半年之内竟没出濠州城半步。元璋见他们不足以共成大事,于是将自己的部属交给别将统率,仅挑选徐达、汤和等24个心腹,离开濠州城,南略定远,向外求发展。徐达比元璋小3岁,生得长身高颧,性格刚毅武勇,和元璋十分契合。汤和比元璋先投奔郭子兴,大3岁,身高7尺,倜傥有智谋,虽然已做了军官,却甘愿受元璋的统率。他们等24人就组成了元璋的核心队伍,后来大都成了明朝的开国功臣。
南略定远时,听说张家堡驴牌寨有“民兵”3千,孤军无援,又断了粮,处境很困难。元璋请示郭子兴,亲自前往招降,软硬兼施,终于把这支队伍给拉了过来,又招降了豁鼻山秦把头的800人。带着这支3 800人的队伍,元璋袭击了定远横涧山的“义兵”,赶跑了元朝的监军张知院,义军元帅缪大亨投降。元璋获得人口7万余,从中选出精壮2万,组成一支浩浩荡荡的队伍,用他自己的话形容就是“赤帜蔽野而盈岗”。
元璋得了这支生力军,立刻重新编制,抓紧训练。他最重视军队纪律,检阅新军时,向将士们特别指出这一点,他告诫说:“你们原来是很大的部队,可是毫不费事就转到我这里来了,为什么呢?一是将官没有纪律,二是士卒缺乏训练。现在我们必须建立严格的纪律,做到严格训练,才能建功立业,大家都有好处。”三军听了,无不欢欣鼓舞。就这样,元璋不但拥有了众多的骁将,也拥有了一支经过训练的几万人的大部队,为以后的成功打下了坚实基础。
定远人冯国用、冯国胜(后改名胜,又名宗异)兄弟原来结寨自保,知道元璋军队纪律好,便率部前来投效。两兄弟喜欢读书,通兵法,哥哥深沉有计谋,弟弟剽勇多智略,深得元璋的信任。元璋问下一步的发展方向,国用认为金陵(元集庆路,今南京)形势险要,古书上说“龙蟠虎踞”,是历代帝王建都的地方。如今应该先攻取作根据地,以后逐步扩大地盘。不要贪图子女玉帛,多做好事,取得人民的支持,建功立业不是难事。元璋听了大喜,任他为幕府参谋。
公元1354年(至正十四年)7月间,元璋率兵往南进攻滁州(今安徽滁州市),途中,定远人李善长到军门求见。善长是地方名人,读书多智谋,治法家学问,善于料事。他和元璋谈得很投机。元璋问他四方兵起,何时才能太平。善长劝他学习汉高祖,说汉高祖也是平民出身,为人气量大,看得远,也看得宽。善于用人,也不乱杀人,五年工夫,便平定了天下。元朝不得人心,上下不和,已经到了土崩瓦解的地步。濠州离沛(今徐州,是汉高祖刘邦的故乡)不远,山川王气,你一定会受到影响,只要能学习这位老乡的长处,天下太平也就快了。元璋听了连声叫好,留下作幕府的掌书记,嘱咐他好好协调各个将领间的关系,同心一德,共成平定天下的大业。
滁州守军力量单弱,元璋的前锋“黑先锋”花云单骑冲破敌阵,大军跟进,一鼓作气就把滁州占领了。元璋的亲侄文正、姐夫李贞带着外甥保儿(后起名文忠)得知消息,奔来投靠。说起家乡的情况,才知道二哥、三哥和姐姐也都死了,免不得大家伤心一场。但可喜的是,在这样的乱世,剩下的几口人还能团聚。还有定远人沐英,父母都死了,孤苦可怜。元璋便把三个孩子都收养作义子,改姓朱。后来又收养义子二十几个,攻占了城池,就用他们作监军和将领同守。
元璋攻滁州时,赵均用、孙德崖等人胁持郭子兴攻下盱眙、泗州。当时彭大已死,儿子彭早住继任,势力顿减,孙德崖就找借口要整死子兴,但碍于元璋在滁州有几万人没敢动手。元璋明知其中的关系,便使钱收买赵均用手下的要人,均用竟放子兴率本部到滁州。子兴一到,元璋就交出兵权,3万兵强马壮的队伍,旗帜鲜明,军容整肃,子兴大喜。
此年11月,元军败张士诚军于高邮城外,又派兵围六合(今江苏六合),六合守军遣使向滁州求援。郭子兴与六合帅有仇隙,不发兵。元璋劝他说,六合是滁州南边的屏障,六合破,滁州不能独存,怎么能够因小小的恩怨破坏了大事呢!子兴醒悟,元璋亲自率军赴援。元军号称百万,攻势很猛,六合守军顽强抵抗,垒破复修,十分紧张。元璋于是佯装败退,于途中设伏,袭击元军,获得大量马匹。元璋推度元军势力仍很盛,如果再来,滁州也难保住,于是送还获得的马匹,又让父老准备酒肉犒劳元军,推说全是良民,团结守护,不过是为了防御寇盗,请大军饶了一方百姓,去打高邮。元军吃了败仗,这一来也有了台阶下,便撤走打高邮去了。后来元廷临阵易帅,元军不但连高邮也没有打下来,反而吃了大败仗。
元军撤走后,郭子兴想据滁州称王。元璋劝他,滁州是座山城,舟楫不通,商贾不到,也没有险要地势可守。一称王目标大了,元兵再来攻,怕保不住。子兴才放弃了称王的念头。
滁州在战乱后,突然增加几万大军,粮食不够吃,军心不安。元璋建议南取和州(今安徽和县),移兵就食。元璋用虹县(今安徽泗县)人胡大海做前锋,一举攻克了和州。1355年(元至正十五年)2月间,捷报传到滁州,子兴便发檄文让元璋做总兵官镇守和州。元璋在子兴诸将中,名位不高,年纪又轻,奉命总兵,怕诸将不服。他寻思再三,决定将檄文先不公布,要凭才干树立自己的威信。他让人撤去大厅上主将的公座,只摆了一条长木凳。次日早晨议事,元璋故意迟到,元朝的习俗以右边为尊,一看只留下左边的最末一席,不作声就坐下了。到议论公事时,诸将只会冲锋陷阵,要判断敌我形势,决定大事,却什么也说不出来,干瞪眼。元璋随事提出办法,合情合理,有分寸,有决断,诸将才稍稍心服。末后议定为了更好地防御敌人的进攻,要分工修理城池,各将领认定地段长度,限三日完工。到期会同诸将检查工程,只有元璋认定的一段修完了,其余的全未修好。元璋拉下脸,摆公座朝南坐下,拿出子兴的檄文,对诸将说:“奉命总兵,责任重大。修城要事,原先各人分别认定,就应如期完工。如今都延误了,一旦敌人来攻,这仗怎么打?这次且饶了,今后如再有不遵军令的,就要严格执行军法,可顾不得兄弟情分了!”元璋确有子兴的命令,是和州城的主帅,诸将理亏,只好谢罪求饶。从此,元璋从带领几千人的小军官成了镇守一方的大将。
元璋在和州,一天出外,见一小孩在门外啼哭,问他为什么哭,说是等他父亲。问父亲在哪里,说在军营养马。问母亲,说也在军营里,和父亲不敢相认,但以兄妹相称。他不敢进去,只好在门外等着。原来子兴的部队发展大了,社会上的各种人都混了进来,他们攻破城池后,就抢东西,霸占别人的妇女,弄得老百姓妻离子散。元璋意识到情况严重,这样再搞下去,军队丧失民心,是站不住脚的。便立刻召集诸将,申明纪律,凡是所得妇女,只有无夫未嫁的才能占有,已经婚配的妇人不许擅自霸占。第二天,他又召集全城妇女、男子到帅府门前互认,霎时间,多少被战乱拆散了的家庭又重归团圆。
4月间,孙德崖部没有粮食吃,不由分说也到和州就食。元璋无法阻拦,叫苦不迭。郭子兴得了消息,从滁州带了人马赶来。冤家相见,矛盾一触即发。孙德崖见子兴势强,计谋退兵。元璋为避免两军冲突,便为孙军送行,让孙元帅殿后。谁知走了几十里,忽然传来消息,两军已在城里打了起来,郭子兴扣留了孙德崖,元璋吃了一惊,策马欲还,被孙军扣留,险遭不测。子兴听说元璋被执,于是派徐达往孙军中替回元璋,待元璋回,再放孙德崖,不久徐达也回来了。元璋虽然冒了一回性命危险,却终究避免了友军的一场火并。
郭子兴逮住了孙德崖,本想杀了他出气,没想到让他跑了,心中闷闷不乐,当月就死了。小明王韩林儿授子兴的儿子郭天叙为都元帅,张天祐(子兴妻弟)为右副元帅,元璋为左副元帅。
元璋起初不想受命,以为“大丈夫宁能受制于人耶?”后来一转念,汝颖红巾军的势力昌盛,可以倚借,于是才接受了任命,军中文告都用“龙凤”年号,而军事上仍是我行我素。
元璋军驻和州好几个月了,粮食供应又成了问题。和州濒临长江,江南是太平(今安徽当涂)、芜湖(属安徽),是盛产稻米的地方。眼睁睁看着对岸米粮成仓,可是没有船只,过不了江。这时恰逢西系红巾军的巢湖水军前来归附,元璋亲自前往处理合并事宜,乘7月间雨水多,巢湖水位高,千余只战舰轻松突破元军的防御,全数抵达和州。7月10日,元璋率军攻克采石(在安徽当涂县西北,是牛渚山向北突出长江中的部分,为长江最窄处,历代兵家必争之地)和沿江堡垒,获得大量粮食。将士们想将粮食搬回和州慢慢享用。元璋知道退回和州绝没有发展前途,便将船缆砍断,顺江放了,以断绝退路。将士们见无路可退,便一鼓作气攻下太平。进入太平后,元璋申明军纪,严禁掳掠,受到当地势力的拥护,儒士李习、陶安率领父老乡亲出城迎接红巾军。陶安讲了一通取得人心才能平定天下的道理,元璋很赞同,就留他在元帅府当令史。下令改太平路为太平府,用李习为知府。又置太平兴国翼元帅府,自己作元帅,以李善长为帅府都事,潘庭坚为帅府教授,汪广洋为帅府令史。这样便开始了建立稳固根据地的工作。随后布置防守,对付元军的反扑。元军从水、陆两路进攻,被元璋军出奇打败。
8月份,张天祐率红巾军及元降将陈埜先部攻集庆路(今南京),不克。10月,郭天叙、张天祐再次攻集庆,陈埜先临阵反戈,红巾军大败,死了两万多人,郭、张二帅阵亡。陈埜先追击红巾军到溧阳(今江苏溧阳),当地“民兵”以为他降了红巾军,设伏把他杀了。
郭、张二帅战死,元璋便成了郭子兴部的最高统帅。就在同一月,他的长子朱标(懿文太子)出世了。子兴的三子元爵,后来小明王韩林儿封他个中书右丞,在元璋麾下做官,无兵无权,和子兴的部分老部下合谋,想搞掉元璋,自立门户,被发觉后处死。
公元1356年3月,张士诚在长江三角洲地带向元军发起强烈攻势,江南元军吃紧。乘这个机会,朱元璋第三次发动了进攻集庆的战斗。战斗很顺利,10天之内就将集庆拿了下来。元璋入城后,安抚百姓,改集庆路为应天府,设天兴建康翼统军大元帅府,以廖永安为统军元帅。又任命赵忠为兴国翼元帅,镇守太平。儒士夏煜、孙炎、杨宪等十几人进见,都加以录用。小明王得到捷报后,升元璋为枢密院同佥。不久又升为江南等处行中书省平章,李善长为左右司郎中,以下诸将都升元帅。