宋政权建立后,元军把进攻矛头集中到中原来这年六月,河南行省平章答失八都鲁率原属太不花的诸王藩将兵马,进攻许州长葛,为刘福通击败,答失八都鲁退至中牟,红巾军劫其营,夺其辎重,俘获其子孛罗帖木儿。但红巾军又遭元将刘哈剌不花袭击,孛罗帖木儿被夺走。刘福通命其将赵明达取嵩、汝、洛阳,北渡孟津至怀庆路,河之北大为震动。元廷不得不自豫南调察罕帖木儿来应战,赵明达战败。十二月,答失八都鲁进攻太康,进围亳州。刘福通将小明王移置安丰,次年三月,自领兵与答失八都鲁军激战于太康、亳州,击退敌军,亳州得安。刘福通在率领红巾军与敌人搏斗的同时,十分注意利用宋政权的名义,把北方各支农民起义军纳入宋政权统辖之下,并建立地方政权。为了分散元军对宋政权都城亳州的压力,扩大战果,从至正十六年九月开始,刘福通派遣军队分路出击,到至正十七年夏,形成三路北伐的壮观局面,而刘福通自率大军攻克汴梁,北方红巾军进入鼎盛时期。
刘福通,在发动三路红巾军北伐的同时,意图倚托益都、曹州两行省比较巩固的基地,展开对汴梁的攻击,使之成为名副其实的宋政权都城。至正十七年,刘福通首攻汴梁不下,后取大名、卫辉两路,形成对汴梁包围的态势,元廷增派知枢密院事达理麻失里攻雷泽、濮州,被刘福通杀死,节制河南元军的答失八都鲁被迫退至石村。“朝廷颇疑其玩寇失机,使者促战相踵”。刘福通又使反间计,“诈为答失八都鲁通和书,遗诸道路,使者果得之以进。答失八都鲁觉之,一夕忧愤死,十二月庚子也”。其子孛罗帖木儿袭职,退驻井陉,刘福通再次进攻汴梁,元守将竹贞逃遁,福通据汴梁为都,迎韩林儿居之。时毛贵虽进攻大都失利,但山东形势甚好,中路军转战山西,西路军趋关中,出现了鼎盛局面。在这一形势下,元河南行省平章周全,以怀庆路降,刘福通命其进攻据洛阳的察罕帖木儿,“守将登城,以大义责全。全愧谢退兵,刘福通杀之”。
平江张士诚乘安丰空虚之机,遣其将吕珍进攻安丰,刘福通等进行了顽强的抵抗,韩林儿急向朱元璋求救,朱元璋亲率大军击败吕珍,和支援吕珍的原天完政权的庐州左君弼,救出小明王和刘福通,把小明王和刘福通安置于滁州,朱元璋命廖永忠迎小明王、刘福通至应天,途经瓜步,廖永忠将他们沉入水中溺死。
刘福通是元末农民大起义领袖,所领导的北伐虽然未取得预想目的,但其横扫元统治的北部广大地区,沉重打击了元军主力,为南方各起义军的发展创造和奠定了条件和基础。从根本上动摇了元朝的统治,为明王朝的建立奠定了基础。然而,明初李善长、宋濂纂修元史时,为了突显朱元璋的开创之功,同时为了防止人民效仿刘福通反抗朝廷,将其列入“逆贼”类草草记过。,