北伐军在两湖战场攻打吴佩孚时,孙传芳以“保境安民”为名,声称“人不犯我,我不犯人”,“不加入任何漩涡”,并派人与广东国民政府联系,洽商“和平”,企图坐山观虎斗,最后收渔人之利。尚在蒋介石出征前夕,孙传芳就派代表至广州见蒋,提出如果北伐军答应不进攻江苏和浙江,他们就不反对北伐军占领江西,甚至还表示,在北伐军占领汉口后,孙传芳希望参加国民党未来的新政府。

江浙绅商害怕革命军进军江浙,也反对孙传芳出师援助吴佩孚,发起和平运动。江浙地区的国共组织为了牵制孙传芳,亦乘机推波助澜。蒋介石为了分化孙传芳与吴佩孚,指派代表何成濬与孙传芳接洽。何、孙原系日本陆军士官学校同学,两人于8月下旬在南京会谈两次。何氏提出两个方案:由广州政府委派孙传芳为东南五省首领,孙传芳与革命军一致行动夹击吴佩孚,会师武汉;或由孙传芳促吴佩孚下野,担保吴不复在政治上活动。孙传芳则提出:粤军应停战并退出湖南,将湖南交由湖南人自治,作缓冲地区,并以和平手段处置国事。除派代表磋商外,蒋介石与孙传芳之间还多次函电往还,但双方未能达成一致。

眼见吴佩孚兵败如山倒,湖北将完全沦入革命军之手,此前一直静观待变的孙传芳开始感到革命形势的发展已直接威胁到自身的安危,唇亡齿寒,渐渐难于自安,于是一面仍虚与国民政府洽商“和平”,一面于8月30日颁发援赣计划,以浙军卢香亭为援赣军总司令,调集苏、浙、皖各军,准备向两湖革命军大举进攻。

北伐的最初计划是“先定三湘,规复武汉,进而与友军会晤,以期统一中国”。所谓“友军”,乃指冯玉祥的西北国民军。依此而论,武汉攻克后,应继续北上攻打河南。但蒋介石实际上早有进攻江西的想法。早在广州出征前夕,蒋介石与鲍罗廷谈到,“为了对后方和前线有利,应当占领江西省”。鲍罗廷表示同意,并问蒋何时能向江西发起攻势,蒋回答说大约在8月中旬。8月29日,蒋介石在日记中写道:“决心亲督江西之战,实借此以避名位。盖不愿居克复武汉之殊勋。”所谓“避名位”,其实正是蒋介石与唐生智之间“争名位”的曲折表白。北伐军进攻湖南时,蒋介石未料到湖南的胜利会如此神速,以致长沙攻克时,他的总司令部尚在广州。等蒋急趋长沙时,发现唐生智已在那里巩固自己的势力。接着攻打武汉,蒋本想抢占头功,但结果又出乎其意料。据中共中央的当下观察,“攻武汉之役,蒋自己拼命往前敌,图先得武汉以扬眉吐气,而使唐生智攻汉阳,但结果是唐先下(汉)阳、夏(口),武昌围城四十余日而后破,湘、鄂两省实权均落于唐手,蒋乃愤而转赴江西,别图发展。”

此时中共中央对北伐的态度一如既往。中共中央认为,北伐的意义是南方革命势力向北发展讨伐北洋军阀的一种军事行动,而不能代表中国民族革命之全部意义。中共仍旧主张国民会议才是解决中国问题的道路。“我们不梦想此次北伐军事胜利就是一种革命……我们不能引导民众对于北伐存过高的希望。”中共中央认为,国民党中派(以蒋介石为代表)的北伐是意在扩大他们的政权,而“我们对于北伐是要求民权运动的扩大”。江西战事的胜败对北伐前途影响巨大,败则不但武汉不能保,广东且有为闽军夺取的危险;胜则浙江之夏超,安徽之陈调元,江苏之白宝山等均有背叛孙传芳而归附国民政府之可能。

9月5日,国民革命军正式进军江西。北伐军投入江西战场的兵力约5万人,分三路向赣西、赣西北和赣南出击,由朱培德、程潜、鲁涤平担任三路总指挥。6日,孙传芳致电蒋介石,要求革命军迅速撤退。7日,孙传芳又发出最后通牒,限革命军于24小时内撤回广东。21日,孙传芳乘江轮赴九江,亲自指挥江西战事。孙传芳将其赣军与援赣军统编为五个方面军,任命邓如琢、郑俊彦、卢香亭、周荫人、陈调元为第一至第五方面军司令,总兵力约16万人。仅从兵力而言,北伐军投入江西战场的人数远不及孙传芳投入的人数。中共中央分析:“此次战争在北伐军方面,蒋纯用粤中带出军队进攻,唐生智并未参加;在孙传芳方面亦纯是孙之嫡系军队卢香亭谢鸿勋等部作战。”两方皆以嫡系军队相搏。但相对于两湖战场,入赣北伐军的战斗力较弱,而所遇之敌孙传芳则胜过吴佩孚,对孙传芳作战比对吴佩孚作战要难得多。蒋介石急于提高自己的威望,另辟战场意在迅速取胜,不料江西战事之棘手,犹过于两湖战场。

在江西战场,北伐军与孙传芳的军队进行了长达两个月的较量。在赣西、赣南和赣西北各地,北伐军进展尚称顺利,唯在南昌,两军有过三次激烈的争夺战。南昌为江西的政治、经济、文化中心。江西的得失系于南昌,故南昌成为双方争夺的焦点。先是北伐军于9月19日首战攻下南昌,但23日被孙军夺回。10月4日,蒋介石下令再攻南昌,但数攻未下。北伐各将领对蒋多怀不满,一因蒋对各军待遇不平,其第1军的待遇优于其他各军,而第1军的纪律与战斗力却较他军为坏,二是蒋的作战方略错误,不注意先击破敌军主力而一意围城,又拒绝唐生智的第8军东下,不愿让唐生智染指江西。蒋之策略既错,而前敌将领又各有怀抱,以致江西久攻不下,蒋不得不下令撤南昌之围。

中共方面鉴于赣战不仅关系蒋介石个人成败,更影响北伐全局,赣战若败,湘鄂必不能守,因此极力向北伐军各方陈说利害,说服他们和衷共济,迅速集中力量消灭孙传芳,一面劝唐生智出兵援助,一面劝蒋介石接受第4军和第8军东下参加赣战。在各方的积极配合下,11月2日,北伐军发起第三次总攻。此次避免以大部队正面攻击,而是设法以主力包抄敌军,避实击虚,终于在11月8日克复南昌。次日,蒋介石在日记中写道:“孙逆五省之兵力,除孟昭月旅外,鲜有孑遗。我军以二万官兵之牺牲,歼灭敌六万余人,虽痛定思痛,而东南之大患除矣。”中共认为,蒋介石在江西战场的胜利半属侥幸,若无第4军和第8军东下增援,蒋介石或至一败涂地。

南昌的克复,标志着江西战事胜利结束。孙传芳在江西战场上投入的10余万兵力大部被歼,其在东南五省的统治大受摇动。据中共中央观察:“江西下后,国民政府已得了中国的一半,革命军胜利的声浪震撼全国,虽妇人孺子亦能举蒋介石之名并附会以许多神话。向日丑诋北伐军之反赤宣传,在一般民众中已不生影响,国民政府势力所及下的群众,均已纷纷起来。这次战争的胜利,在中国革命的历史上关系是很重要,在国际上亦有意义,帝国主义者对华的态度都不能不随着北伐军之胜利而有点改变了。”

在北伐进攻江西的同时,福建战场亦于10月5日拉开战幕。福建属于孙传芳所辖的东南五省之一,由周荫人执掌军政大权。周荫人虽不是孙传芳的嫡系,其战略意图与孙传芳也不尽一致,但作为联军的一部分,陈兵于闽粤边境,直接牵制和威胁广州国民政府,成为北伐军的后患。蒋介石鉴于闽粤边境敌我力量悬殊,力主稳健,反对急切进攻。何应钦则认为,由于北伐军在两湖江西战场节节胜利,周荫人闽军士气不振,加之其士兵多为北方人,不善山地野战,更兼竭力搜括,闽省民众恨之入骨,各地民军蜂起,福建战事有胜算把握,因此向蒋介石请战。蒋介石表示同意,并将入闽作战的各军合编为东路军,任命何应钦为东路军总指挥。北伐军在福建的战事较为顺利。自永定开始,北伐军连克同安、泉州、仙游、莆田、永泰,一路所向披靡,闽军纷纷倒戈。闽系海军亦被策反归附革命军。12月2日,北伐军占领福建省城福州,福建全省归入国民政府统治下。

北伐军在克复赣闽后,东进江浙势所必然。浙江省省长夏超一向主张“浙人治浙”,不满外省人统治,对孙传芳委派的浙江总司令卢香亭尤为反感。1926年春,孙传芳试图行调虎离山之计,拟将夏超调往江苏。此事加深了夏孙之间的矛盾。国共两党乘机派人对夏超加以策反,允诺委夏超为国民革命军第18军军长兼理浙江民政事宜。夏超于是秘密联络地方派军人进行倒孙活动,酝酿独立。浙江地方武力分为三部分,一是夏超的保安队,一是陈仪的第1师,一是周凤歧的第3师。周凤歧与夏超关系比较密切,亦有倒戈之想,但事为孙传芳所警觉,周部被孙传芳调赴江西。10月16日,夏超在杭州通电反孙,宣布浙江独立,并就任国民革命军第18军军长。孙传芳获悉夏超独立后,立即命驻防南京的孟昭月部所属第15旅旅长宋梅村为前敌总指挥,率部前往镇压。由于夏超的武力均为警察,缺乏实战经验。夏超的独立很快失败。夏本人被孙传芳处决。

孙传芳平息夏超独立事件后,任命陈仪为浙江省长,并派其嫡系孟昭月为浙江总司令。赣闽战场相继失利后,孙传芳之前线将领纷起异心。自1926年11月起,陈调元、王普、陈仪等均不满于孙的控制,而与革命军暗通款曲。11月7日孙传芳从江西撤退至南京,并将其在浙部队全部撤至沪杭、沪宁两线,集中整顿,以图再起,并决定联合奉、鲁军阀共同“反赤”。

见孙传芳失去江西退保江浙后,山东的张宗昌准备南下争夺江苏,而奉系张作霖则密切防范西北军的再起,反不甚注意北伐军的前进。张作霖认为北伐军久战必疲,一时无力进攻奉系,而冯玉祥势力在西北不消灭,则随时可能威胁奉系。11月19日,孙传芳秘密北上,与张作霖等会晤天津,筹议共同组织一支安国军。11月30日,孙传芳、吴俊升、张宗昌、阎锡山等在天津以15省区联盟推戴形式,领衔通电推举张作霖为安国军总司令。12月1日,张作霖宣布就任安国军总司令,并委派孙传芳、张宗昌为副司令。安国军号称拥有30万兵力,实际只有15万,其编制分4军:第1军军长由张作霖兼任,统奉军全部;第2军军长张宗昌,统直鲁军;第3军军长孙传芳,统苏浙军;第4军军长冠英杰,统豫直军。其计划是,张学良率奉军入河南援吴佩孚,由河南反攻湖北;孙传芳军从浙江反攻江西;张宗昌率直鲁军担任苏皖北部防务,然后从安徽分两路进攻鄂东和江西。但这些军阀部队各有后顾之忧:奉系担心西北国民军再起,吴佩孚担心奉系趁机侵夺其河南地盘;孙传芳担心张宗昌借南下之机染指江南。

陈仪就任浙江省长后,表面上拥戴孙传芳,暗中却与国民革命军频频联系。12月11日,从江西战场撤退、辗转回浙的周凤歧师在衢州叛孙,宣布接受国民革命军第26军军长的委任。12月17日,蒋介石电任陈仪为第19军军长,要他与周凤歧一致行动,但陈仪犹疑而没有公开表明立场,意在以浙江自治的名义既拒孙,也拒绝革命军。12月19日,浙江各界联合会开会通过《浙江省政府组织大纲》,选举陈仪、周凤歧、蔡元培等为省务委员会委员,以陈仪兼民政部长,宣布浙江自治。孙传芳一方面表示对浙江自治决不破坏,一方面指使孟昭月率部入杭州,于12月22日包围省政府,将陈仪解赴南京加以软禁,浙江自治失败。

北伐出征前夕,鲍罗廷向蒋介石建议:我们不需要进攻江苏和浙江,因为这会使我们同帝国主义发生直接冲突。江西战事尚未结束前,蒋介石曾致电其亲信张静江:“北伐军事只到江西为止,我以后专力军事,汪(精卫)可回来任党及政府工作。”当时中共也认为,北伐军占领赣闽两省后,“北伐战事至此便可告一段落,此后政治上将趋重于内部汪蒋冲突问题。”但当南昌克复后,中共改变此前关于进攻江西后不再东下的想法,力主继续东下,直到完全消灭孙传芳的势力为止。中共认为,如果不消灭孙传芳,全国将出现三种力量(张作霖、孙传芳与国民政府)并存的局面。这种三足鼎立的局面,令民众难以取舍:“大概一般人的心理多是觉得反赤的奉张太要不得,一面又觉得广东太红了,若果在这两者中另有一种力量存在,他是很可得着一部分人的,尤其是资产阶级。假使在这个争斗中只有两种力量,一方是代表反动势力的黑奉,一方是代表进步势力的赤粤,民众的选择更较容易。”中共还认为,为免除北伐军内部的地盘冲突,亦须赞成蒋介石东下,因为蒋介石如能拥有浙赣闽三省,也可自成一个局面,不必再回汉口与唐生智争地盘,或回广东与汪精卫发生冲突。

1927年1月1日至9日,国民革命军总司令部在南昌召开军务善后会议。蒋介石、张静江、谭延闿、唐生智、邓演达、李宗仁、朱培德、程潜、张发奎等出席了会议。会议接受了蒋介石进军长江下游的提议,决定对河南吴佩孚暂取守势,对江、浙、皖的孙传芳取攻势,先期攻取沪杭,击破孙军主力,再会师南京。会议同时决定将北伐军编为东路军、中路军和西路军三个战斗序列,由何应钦、蒋介石(兼)、唐生智分任三路军之总指挥,分别由闽、赣、鄂发起进攻。

东路军很快于2月中旬占领整个浙江,消灭了孙传芳嫡系孟昭月、郑俊彦、白宝山部的主力。浙江失守后,孙传芳将其残部2万余人集结于沪杭、沪宁沿线的松江、青浦、上海、苏州一线,企图守住江苏,与国民革命军作最后较量。奉军、直鲁军为确保上海、南京,也兼程南下,增援孙传芳。张宗昌于2月23日抵南京与孙传芳会晤,商议设安国军苏鲁联军总司令部于南京。2月25日,孙传芳在上海召开军事会议,决定将孙军残部调回后方休养,请鲁军接替担任上海前线军事防务。

当东路军节节胜利之际,中路军也进展顺利。安徽名义上属于“五省联军”的势力范围,但陈调元与孙传芳貌合神离,实际上自成体系。孙传芳在江西战败后,陈调元即向北伐军方面自谋出路,曾派代表到南昌与蒋介石秘密接洽。3月4日,陈调元、王普、叶开鑫等相继易帜,宣布加入国民革命军,分别就任第37军、第27军和新编第5军军长等职。陈调元等倒戈后,皖南大片地区不战而定。

3月24日,北伐军攻克南京。与此同时,中共趁北伐军兵临上海近郊之际,领导上海工人举行武装起义,组织上海特别市临时市政府,迎接北伐军入沪。3月26日,蒋介石来到上海。至此,东南五省和上海、南京均为北伐军所控制。

在不过8个月的时间里,北伐军接连击溃吴佩孚和孙传芳两大军阀。国民政府的势力范围由珠江流域推进到长江流域,形成与北京政府平分天下的局面。中国的政治和军事格局至此为之一变。这一剧变,大出时人意料之外。天津《大公报》的一篇社评颇能反映当时北方社会对北伐结局的惊愕和诧异:

楚歌过河,粤讴渡江,此中国历史上之剧变,而尤为近今驯伏北洋派势力下之人民所梦想不及者。咸同之役,粤兵湘勇,转战长江上下游者十余年,黄河流域不与也。辛亥之役,止于武胜;癸丑之役,扼于临淮。后此诸役,入鄂者且未得逾汀泗桥,攻赣者终不越大庾岭。故连年战事,在北人视之,长江诚南北之天限也。而自北军视之,且以为只有南征,绝无北伐,除北洋军系外,天下无战士也。党军去秋突出武汉,今春进陷苏浙,世人惊为意外,渐认南北势力将有不可测之变化。而北洋军系中人,尚始终以为变只此耳,长江绝难飞渡,黄河曷可断流,北军进纵不得统一,退亦不失偏安也。曾几何时,长江落后,黄河当前,小站练兵数十年之积威,嫡派先零落四散,旁枝又支撑维艰,此诚奇变浩劫,宜乎某上将军之大呼天意不止也。