当时除了郭子兴的起义军外,还有李二起义军的残余党羽赵均用、彭早住,他们看见郭子兴势力强大,也率领部众前来投奔,但是他们率领的部众,残暴野蛮,蛮横无礼,在起义军队伍中称王称霸,几乎喧宾夺主。看见这种情形,朱元璋认为郭子兴懦弱无能,治军无方,不足以与共图大事,就私自率领他的家乡人徐达、汤和等人,离开郭子兴,自立门户,攻占了南方的定远,接收了当地投降的驴牌寨民兵三千人,壮大了起义军队伍。
朱元璋率领获胜的大军,继续东征,边夜袭击和攻占了张知院占据的横冈山,接收投降的士兵三万多人,他在道路遇到了前来投奔他的定远人李善长。李善长,字百室,定远人。从小就喜爱读书,有智慧和谋略,通晓法家学说,预计事情,大多被他说中。朱元璋平定滁州的时候,李善长前往迎接拜见。朱元璋知道他是当地年高有德之人,并对他以礼相待,并将他留下掌管文史书籍。元太祖朱元璋曾经神情从容地问李善长:“天下之乱什么时候才能平定呢?”他回答说:“秦末战乱之时,汉高祖从普通百姓中崛起。他生性豁达大度,知人善任,不胡乱杀人,五年成就了帝王的基业。现在元朝纲常已经混乱,国家四分五裂。倘若效法汉高祖,天下便可轻易平定!”朱元璋称赞他言之有理。
率领起义军四处征讨,取得节节胜利的朱元璋,不久后就听说郭子兴被赵均用紧紧围困。他立即设下计谋,让郭子兴安然脱险,朱元璋把郭子兴迎接到滁州,让他在那里担任主帅。朱元璋还派遣部将张天佑攻陷和州,郭子兴命令朱元璋前往那里住守,统帅各路起义大军。
郭子兴生病死亡后。郭子兴的儿子郭天叙继任主帅,得刘福通通报檄文,任命郭天叙为都元帅,任命张天佑和朱元璋为左右副元帅,朱元璋当初心里很纠结,嫌官职太小,本来不想接受。后来他想到韩林儿虽然是一位草莽皇帝,没有多大作为,但是现在人多势众。兵强马壮,势力很强大,旁上这棵大树也好暂时乘凉,因此仍然使用他的龙凤年号,号令天下群雄,继续与元朝对抗,把起义军做大做强。
这时,正在朱元璋犹豫不决的时候。忽然有士兵奔跑进来报告说,怀远人常遇春率领大军前来投奔。朱元璋顿时欣喜若狂,连忙说:“快请!快请!”不一会儿,一位战将带领着几位随从,大步流星地走了进来,那位战将身披战甲,相貌英武。燕颈豹颔,相貌堂堂,朱元璋见了十分高兴,一边拉着常遇春的手,一边激动地说:“常英雄。兄弟我久仰大名,你的到来,真是让我猛虎添翼,求之不得呀!你就让我的帐下总兵吧!我这里所有的军队都听从你的指挥!”
接着又士兵前来报告说巢湖渠帅,有书信到来,愿意率领水师和千艘战船,前来投诚。朱元璋从士兵接过书信,满脸喜色看了一遍,一掌拍在桌子上,大声说道:“真是天助我也,我对渡江战船的事儿发愁,今天巢湖统帅廖永忠、俞通海等人,愿意前来归附,真是天赐良机,助我成功了!”
朱元璋立即在军营外的练兵场上,集合队伍,率领将士浩浩荡荡地开进巢湖,与廖永忠、俞通海等人相见,他们在战船上举行宴会,受到热情接待,他们开诚布公,真诚相待,订下友好盟约。他们在那里停留了三天,率领水师扬帆出发,直接开到了铜城。他们在那里与元朝的中丞蛮子海牙军遭遇,被阻住水路通道,战船无法通过。
那天刚好天下大雨,河水暴涨,起义军用轻快的小船,偷偷地通过小港,出其不意,袭击元朝官兵,一鼓作气,大获全胜,打败了元朝水军,起义军战船顺风挺进,直抵牛渚。牛渚南岸就是采石矶,地处重要关隘,自古以来就是兵家必争之地,与牛渚相互为犄角,两岸都有元兵驻扎守卫,刀枪林列,壁垒森严,易守难攻。
朱元璋观察了当前的战事和地形,果断下令起义军先攻牛渚,后攻采石矶,起义军将士奋勇争先,勇往直前,争先登上了牛渚渡。元朝守军也倾巢出动,拼命抵抗起义军的进攻,虽然元朝军队人多势众,但是并没有什么战斗力,无法有效抵抗,渐渐败退下去。常遇春一边率领士兵徒步前进,一边挥戈杀敌,就像出水蛟龙,下山猛虎,杀得元兵鲜喷涌,血肉横飞,死伤无数,元兵只得望风而逃,全军溃败,仓皇逃窜。
起义军攻占了牛渚,又集中全部力量,向采石矶发起猛烈的攻击,采石矶高出水面,大约有一丈有余,居高临下,易守难攻,起义将士使用快艇进攻,都被上面乱箭和巨石打退了回来。常遇春看见那种情景,急中生智,一马当先,左手持着坚固的盾牌,右手持着锋利的长矛,飞身而上,登上了采石矶,一刀刺死守卫采石矶的元朝首领老星卜喇,孤身一人疯狂砍杀,夺取阵地。
起义军将士看见常遇春登上了采石矶,立即争先恐后,蜂拥而上,无数将士奋勇争先,齐心协力,霎时间就攻占了采石矶,扫荡了所有的元兵,起义军一鼓作气,乘胜进攻太平,元朝总兵靳义兵败后,赴水自杀。起义军的各位将领,兴高采烈地将朱元璋迎接进城,召集军事会议,决定成立太平兴国翼元帅府,朱元璋被推举为元帅。任命当涂人陶安任参议戎幕,当地的著名学者李习被任命为知府。新政权