國民革命軍北伐

历史背景

1911年武昌起义爆发，引发各地连串反清，是为辛亥革命，次年中华民国成立，南京的民国临时政府与北京的清廷北洋军领袖袁世凯达成南北议和，由袁世凯取代孙中山出任中华民国临时大总统，换得满清宣统帝逊位。为限制袁世凯，中华民国临时参议院通过《中华民国临时约法》，规定内阁政体。
1913年，中华民国第一届国会议员选举结束，代表南方革命势力的国民党取得议会多数。国民党干事长宋教仁在赴北京组阁途中，被暗杀于上海。国民党断言袁世凯是暗杀主谋，与其势成水火，发动一系列战争反袁及其后的北洋政府。
1915年，12月12日袁世凯称帝，改元洪宪，25日蔡锷、唐继尧、李烈钧等发动反帝战争，1916年贵州刘显世、广西陆荣廷响应，江苏都督冯国璋、江西都督李纯、浙江都督朱瑞、湖南都督汤芗铭、山东都督靳云鹏等五大帅联合逼宫，而且各国公使纷纷表示反对，3月袁世凯下令撤销洪宪帝制，6月6日忧愤而卒，袁世凯逝世之后，北洋军人各行其是，内部分裂，形成三股主要的势力：段祺瑞为首的皖系、曹锟为首的直系和张作霖为旁支的奉系。他们为控制北洋政府而多次混战。
1919年，孙将革命势力改组为中国国民党。1920年代初，孙在苏联帮助下，组建黄埔军校，与中国共产党合作。中国共产党员加入中国国民党本属一种策略，并非放弃其原有立场，共产党党员在中国国民党中秘密组织党团，把中国国民党领导人分为左右两派，联络左派，打击右派，制造党派分裂。1925年7月1日，在讨伐陈炯明后，蒋介石在广州改组中华民国陆海军大元帅大本营为国民政府，以黄埔军校组建国民革命军。第一次国共合作推动全国革命形势，1925年7月1日，广东革命政府在广州成立，组建国民革命军，为北伐战争准备条件。在广州，革命政府根基尚未稳固，地方军阀仍然盘踞广东各地，尤以东江地区之陈炯明势力最强，威胁最大。
1920年，曹锟与段祺瑞爆发直皖战争。1922年，发生第一次直奉战争。
1924年第二次直奉战争后，奉系张作霖击败直系吴佩孚。10月，冯玉祥发动北京政变，推翻直系大总统曹锟，驱逐溥仪，并电邀孙北上共商国是。孙抵达北京前，冯玉祥事先与张作霖商定，邀段祺瑞入北京任“临时执政”摄行大总统，终止《临时约法》和取消中华民国初年国会。12月4日，孙抵天津，受到盛大欢迎，因劳累并受风寒，身体感觉不适。12月31日，孙扶病至北京，发表《入京宣言》，及对欢迎民众之书面谈话。孙坚持召开民选的国民会议以解决国是，段祺瑞却主张召开军政商学实力派组成的善后会议。
1925年1月1日，孙因病发住进协和医院治疗，1月20日以后，病势严重，不能饮食，经西医诊断为肝癌末期，救治无效。3月12日9时30分，孙中山逝世。早在孙中山生前，不少中国国民党员已反对改组，孙死后中国共产党员势力扩张，反共派被迫离开广东。11月，旅居上海、北京等地之中国国民党中央委员邹鲁、谢持等在北京西山举行会议，决定取消容共政策，另设中央党部于上海，广州中国国民党中央不予承认，指为非法，中国国民党遂开始分裂。
1925年2月1日，善后会议召开。同月，蒋中正率黄埔军校师生共三千人攻打陈炯明，巩固广东国民政府根据地。国民革命军东征打败陈炯明，至1926年初，广东全省底定，李宗仁也统一广西，并归附国民政府，两广革命根据地统一，奠定基础发动北伐战争。1925年7月，中华民国陆海军大元帅大本营改组，并设立国民政府军事委员会，改编黄埔学生军和辖下各地方部队。中国国民党成立国民政府，组织国民革命军，并得到苏联派遣顾问及提供武器弹药等援助。同时，加大收编南方各省降部，何应钦、谭延闿、程潜、吴铁城、唐生智等中国近代著名人物，均于此时加入国民政府和中国国民党。直至1926年7月，国民政府共收编扩充国民革命军至八个军。
1925年10月，吴佩孚、孙传芳指挥直系军阀于长江流域争夺北洋政府领导权，向张作霖的奉系军阀发动反奉战争。1926年4月，国民军撤出北京和天津，退往河北西北部及山西北部，驻守南口、多伦一带；直军、奉军和晋军组成联盟进攻国民军，双方在南口一带激战，到8月国民军不敌，退往绥远、甘肃；吴佩孚亲自率领主力部队全力对付国民军而无暇南顾，牵制北洋军阀大量兵力，予北伐军以可乘之机。北洋各军阀在长江流域实力削弱，无力顾及国民政府。
在国民政府北伐之前，当时中国政治和军事形势呈现多方格局，国民政府控制两广一带。1926年奉系张作霖称霸于北方，号称兵力35万。张作霖掌控北洋政府，并辖有华北、东北等地。直系吴佩孚再起后，割据中原，兵力约20万。吴佩孚占据湖南、湖北和河南三省以及河北、陕西部分地区，同时握有京汉铁路。在东南方面，孙传芳自称五省联军总司令，兵力约22万。孙传芳在长江中下游地区，控制苏浙沪赣等地。三大集团形成鼎足之势，其兵力虽远超广州国民政府，但彼此对立，未能团结一致；此外，国民军倾向革命盘踞西北，而湖南军阀唐生智又愿意归附，都有利于北伐。阎锡山掌握山西。
孙中山一贯主张发动北伐战争以统一中国，在1917～1924先后组军发动三次北伐（第一、二次护法运动和第二次直奉战争中的皖奉粤联军）。但却先后失败于1918年的南北军阀议和与七总裁制、1922年的六·一六事变及1924的广州商团事变。。

中国共产党对北伐的态度

根据文献记载，包括中国共产党的党史等，中共当时支持和积极配合在广东的国民政府准备北伐。2月，在北京，中国共产党中央特别会议提出出兵北伐推翻军阀统治的主张。3月，蒋怀疑中山舰叛变，逮获中共党员，又限制中国共产党员在中国国民党中之活动，鲍罗廷力主暂时退让，汪精卫称病出国，蒋掌握大权，仍采容共政策。1990年代起有学者对于以前有观点称陈独秀反对北伐提出反对意见，列出证据认为总的来说陈独秀是赞成北伐的。

誓师北伐

1926年5月，湖南代理省长唐生智归附国民政府。5月，北伐军先遣部应唐生智请求进入湖南，进展顺利。与此同时，随着湖南形势的恶化，吴佩孚命叶开鑫为湘军总司令，率部进攻唐部。至5月底，国民革命军第七军（军长李宗仁）第八旅和国民革命军第四军（军长李济深）叶挺独立团先期入湘，增援唐生智部，打开北伐前进道路。以防御吴佩孚军队进攻。6月初，叶挺独立团和第七军第八旅分别在渌田和金兰寺等地击溃叶开鑫一部，双方对峙于渌水、涟水一线。
1926年6月5日，中国国民党中央执行委员会临时全体会议通过迅速出师北伐案。7月4日，在广州，中国国民党中央执行委员会临时全体会议通过《国民革命军北伐宣言》，陈述向北洋政府发动北伐的理由，其中提到：“统一政府不成立，则外祸益烈，内乱益甚，中国人民之困苦，亦将如水益深，如火益热，中国人民将无噍类矣。”
1926年7月9日，蒋介石就职国民革命军总司令；国民革命军在广州誓师北伐。宣称北伐之目的是打倒军阀和帝国主义，寻求中国之统一和独立自主。在苏联顾问帮助下，决定采取集中兵力行各个击破的战略方针，首先歼灭吴佩孚军，然后消灭孙传芳军，最后消灭张作霖军。初期策略是：“先打吴佩孚，联络孙传芳，不理张作霖。”国民政府以两广为基地，以主力进军湖南。北伐军兵分三路：主力部队进攻湖南、湖北；中路进入江西；东路驻守广东东部，伺机进入福建。北伐初期反帝国主义运动，以英国为第一对象，日本初持静观态度，蒋亦曲意联好。北伐军兵力约10万人，由蒋介石担任总司令。中国共产党在扩大会议上与第三国际指示中，均强调中国共产革命的根基是解决农民问题。在北伐中，中国共产党组织农会，扩大工农运动，迅速扩张势力。国民政府内分裂成左右派。

进军湖南、湖北

在民众大力支援下，北伐军进展迅速。1926年6月初，叶挺独立团和第七军第八旅分别在渌田（今湖南安仁北）和金兰寺等地击溃叶开鑫一部，双方对峙于渌水、涟水一线。陈铭枢部与张发奎部分别由高州和琼崖两地开拔援湘。7月﹐北伐军攻下长沙，贵州、四川等军阀宣称归附。7月上旬，国民革命军第四军第十师、第十二师和叶挺独立团及第七军、第八军分别在安仁、永丰（今湖南双峰）地区集中后，分路并进。第四军克醴陵，第八军三个师占湘潭，另两个师和第七军一个旅攻宁乡。7月11日，国民革命军进占长沙，迫叶开鑫部退守汨罗江北岸。8月，北伐军攻下湘北重镇岳州，吴佩孚匆忙率兵南下增防。8月12日，国民革命军召开军事会议，决定以第四军、第七军、第八军直取武汉；国民革命军第二军、国民革命军第三军集结醴陵、攸县，对江西警戒；国民革命军第六军和国民革命军第一军第一师、第二师为总预备队，随主力跟进。8月19日，第四军攻克平江，向通城进击；第七军占领浯口，向羊楼司进发。8月22日，第八军攻克岳阳。叶开鑫部万余人退据粤汉铁路上的要隘汀四桥，吴佩孚急调一个混成旅和一个团驰援，企图凭险固守。8月26日，国民革命军第四军六个团发起攻击，激战一昼夜，不克。吴佩孚亲临督战，下令“退却者杀无赦”，双方互有胜负，湖北汀泗桥几度易手。8月27日，张发奎亲督三十五团，和叶挺独立团迂回吴军侧后，突然猛攻，占领汀泗桥。吴军前后受攻击，退守贺胜桥。吴佩孚亲率两个师增援。
8月30日，国民革命军第四军、第七军与吴军展开激战，第八军首先攻入吴军阵地，其他各部随即扩大战果，取得贺胜桥大捷。8月底，北伐军攻下通下往武汉之险要门户汀泗桥和贺胜桥，吴军兵败如山倒，从此一蹶不振。吴军退守武汉。9月1日，第四军、第七军逼近武昌，9月3日、9月5日两次攻城不克，遂封锁围困。这时，汉阳守军一个师起义，吴佩孚率一部退往河南信阳。第八军9月6日进汉阳，9月7日占汉口，主力乘势进占武胜关。10月初，武昌守军曾两次突围失败。10月8日，守卫城南的吴俊卿第三师准备投诚，10月10日，他打开城门迎接北伐军入城，当日，叶挺独立团首先攻占蛇山，国民革命军占领武昌，二万多守军全部被歼。生擒刘玉春、陈嘉谟，至此吴佩孚在武汉军力被全部消灭。北伐军占领两湖，声威大振。

进攻江西

北伐初期，孙传芳按兵不动，拟坐收渔利，到北伐军攻下长沙，才派兵增援江西，同时令闽军进犯广东。8月下旬，孙传芳见吴军濒于崩溃，决定从江苏、浙江、安徽调兵十万，会同驻江西部队两万余人，向南浔铁路沿线和江西湖北边境集中，企图截断武昌至长沙铁路，攻取湖南、湖北。蒋于击破吴佩孚后，决进取江西，兵力约五万人。北伐军进抵武汉后，也调兵进攻江西，与孙军发生激战。在江西南部，第二军第五师和第五军第四十六团协同独立第一师攻占赣县（今赣州市）后，沿赣江北上。在江西西部，第三军和第二军主力出萍乡，连克宜春、万载、分宜，在新喻(今江西新余)与孙军激战后，分别向高安、樟树（今樟树市）进发。在江西西北部，第六军和第一军第一师先后攻占修水、铜鼓、高安。孙军虽在兵力上占有优势，但指挥不统一，未能协力作战。9月19日第六军第十九师乘势攻占南昌，遭孙军反扑，加之增援的第一军第一师又在牛行（今属南昌市）战败，乃于9月24日退向奉新。蒋加派援军2万人。
10月上旬，第二军主力攻占樟树、丰城，第三军歼灭孙军一部于南昌西山万寿宫地区；由湖北东南部进入江西西北的第七军，在箬溪重创孙军一个师后，攻占德安，形成了围攻南昌的态势。由于孙军回师救援，国民革命军各军又未协同，德安得而复失，第六军攻永修失利，第三军在牛行、乐化受挫。这时，第二军和第一军第二师冒然第二次进攻南昌失利，被迫于10月13日撤退。南昌又为孙军夺回。国民革命军吸取教训，决心集中兵力先破南浔铁路之敌，尔后再图南昌，并调第四军由湖北入江西。10月20日，国民革命军第十四军在第二军配合下攻克临川（今抚州），截断江西福建通路。10月，蒋下命令进入福建部队，攻破周荫人主力后，调往江西参战；先后攻克樟树、丰城、建昌、德安、永修、抚州，孙传芳乞和，蒋拒绝。11月2日开始第三次进攻南昌。第七军再克德安，第四军攻占马回岭，两军又在德安南面的九仙岭击溃孙军两个师，截断南浔铁路。11月，攻克九江，南昌守军负嵎顽抗，蒋亲临督战攻克，孙传芳在江西军力被全部消灭。永修、乐化等地孙军溃逃，在滁槎附近被歼一万五千人；11月8日，国民革命军攻占南昌，歼灭守军万余人。蒋通电各省促人民自决。孙军残部败退安徽南部及江苏浙江一带。孙军大溃，精锐尽丧，为北伐以来规模最大战役。

占领福建

孙传芳军驻福建的五省联军福建总司令周荫人部四个军三万余人，为策应江西作战，进军粤东，试图将国民革命根据地连根拔除。然而消息于进军前已透露。
1926年9月，蒋命令潮汕部队进攻福建。10月上旬，攻占广东蕉岭、松口、饶平等地。由于周荫人于直隶出生，对闽系来说是客军而非地主，因此国民革命军第一军军长何应钦决定主动出击击溃其主力，同时蒋介石也派遣李大超前至闽军中收买分化。10月中旬，何应钦整合广东保安团与黄埔军校在学生作为防御主力，第一军第三师谭曙卿则作为攻击矛头，于10月9日和第十四师主力进袭击周部后方，占领永定，然后回师松口；此时，周部第二军两个师在蕉岭起义，并配合作战，歼灭周部第三军。在福建方面，由于闽军平日横行霸道，民怨极深，各地民军蜂起。由于周部于福建之风评不佳，在永定战斗之役遭受国民革命军与城内民众的联合夹击崩溃，仅带少数侍卫逃出。是日，第十四师冯轶裴则于击溃闽军刘云峰旅。此役国民革命军俘虏4,000人，缴获4,000余支枪械与十多门火炮。周部第四军和第二军残部退往长汀。北伐军势如破竹，闽军望风而逃。10月13日，第一军于梅县松口战斗击溃刘俊、李宝珩旅，在不到一星期，周荫人主力已损近半。受此影响，曹万顺与杜起云两旅于10月17日接受国民政府收编建议，倒戈改组为国民革命军第十七军。何应钦则升任为国民革命军东路总指挥，挥军福建。10月下旬，第十七军由上杭沿汀江两岸向北推进，在由江西入福建的第十四军第二师配合下，相继占领龙溪、晋江、莆田、永泰，逼近闽侯。
蒋令入闽部队在攻破周荫人主力后赴赣参战，先后攻下樟树、丰城、建昌、德安、永修、抚州。11月，先后攻下漳州、泉州，福建全境平定。12月初，自江西东部入福建的第二军第六师进占建瓯，切断福建、浙江孙军的联系。驻福建海军第一舰队起义，于12月2日决定接受广东国民政府改编。周部驻闽侯一个旅投诚，国民革命军于12月9日占领闽侯，周部退往浙江。东路军于12月间占领福建全省，向浙江挺进。

攻取南京

孙传芳连遭失败，求援于奉军。张作霖企图乘机夺占孙、吴的地盘，几一部接防江苏、安徽北部，一部入河南增援吴佩孚。孙传芳收集残部八万余人，分布在沪宁铁路、沪杭铁路沿线和安徽南部地区。1927年初，国民革命军为肃清长江下游之敌，分三路进军。中路军（分江左军和江右军）分别由湖北、江西沿长江向安徽、江苏推进，主攻南京；东路军由福建、江西分路入浙江，进军淞沪，助攻南京；西路军由湖北入河南，钳制北面之敌。1月上旬，东路军国民革命军第二十六军在富阳遭孙军一部反击，退至衢县（今衢州）。1月27日，第一军协同第二十六军反击，在龙游附近击溃孙军，2月上旬，进占金华、兰溪，继而在桐庐和富阳击败孙军，2月18日占领杭县（今杭州）。2月底，国民革命军占领浙江全境。3月上旬，东路军开始进攻淞沪，至3月20日，一部经太湖以西进占武进（今常州），截断沪宁铁路，主力连克松江、吴县（今苏州），逼近上海。3月21日，中国共产党上海区委员会决定于当日把工人罢工转入工人武装暴动。计其武装：手枪二百五十支、手榴弹二百枚。周恩来等中国共产党人领导上海工人举行第三次武装起义，激战两天一夜占领上海后，东路军才开进市区。中路军(第二军、第六军)的江左军由湖北东部向怀宁（今安庆）挺进，孙军陈调元、王普等部相继起义，怀宁不战而下。中路军的江右军从江西境沿长江南岸东进，相继攻克芜湖、当涂，3月23日占领南京。3月24日南京事件发生，做成英国2人，美、法、日、意各死1人。美国受伤3人，英、日各2人受伤。蒋拒绝孙传芳求和。由于国民革命军作战员英勇奋战，基本消灭北洋军阀吴佩孚、孙传芳军队。

夺取政权与国共分裂

自北伐展开后，中国共产党员加紧夺取领导权，与中国国民党斗争日趋激烈，1927年2月在鲍罗廷控制下，中国国民党中央党部及国民政府迁设武汉，议决削减蒋权力。1927年3月10日至3月17日，在中国国民党第二届中央委员会第三次全体会议后，其执监委暨候补委员80名中，中国共产党员约居三分之一，亲共之左派亦居三分之一，国民党中央党部各部部长暨其秘书，共产党员亦占一半以上，至此国民政府已由苏联顾问与中国共产党势力全权把持。在北伐军进攻上海时，中国共产党策动工人起事，企图夺取上海政权，引起商民疑虑。3月24日，发生南京事件，国民党中右派势力称中国共产党策动部分国民革命军针对英美日领事馆及外国教堂、寺庙、学校、医院、商店、住宅进行烧杀打劫等排外运动，英、美军舰出于报复部分中国的这种行为，向南京开炮，中国军民死伤无数。
鲍罗廷并在武汉成立“中国国民党中央执行委员会暨国民政府委员会临时联席会议”，凭借掌握中共与国民党左派进而取得政治主导权，以所谓“提高党权”、“反对军事独裁”、“打倒新军阀”为理由，于1927年3月10日，中国国民党二届三中全会通过《统一党的领导机关决议案》，通过了“统一革命势力”、“统一党的领导机关案”等反蒋方案，随即在蒋北伐途中剥夺蒋主席职务，降其为普通委员。蒋在南昌发表《告黄埔同学书》，表明不接受该决议。
北伐战争节节胜利推进，严重威胁著着帝国主义；蒋决定“以快刀斩乱麻的方式清党，把越轨的左倾幼稚分子镇压下去”；先后在赣州、南昌、安庆、九江等地发动清党，蒋即表示：不用武力或任何群众暴动改变租界之地位。4月，中国国民党中央监察委员在上海召开紧急会议，指责中国国民党内之中国共产党员受共产国际指使，破坏国民革命，要求对“中共首要”采取紧急处理，清除党内中国共产党分子。4月12日，蒋在上海发动清党（或谓四一二政变），4月18日另立南京国民政府。设“清党委员会”，实行武力清党，在上海、南京、广州等地缉捕中国共产党员。鲍罗廷也秘密策动郭松龄将军反对张作霖。中共土地改革路线为：“有土皆豪，凡绅必劣”。张蒋两人1926年秋天就开始秘密接触，两人分别派唐生智和杨宇霆作为代表，展开秘密会晤，达成共同驱逐共产国际势力协议。4月6日，“南京事件”后不到两周，蒋于北伐途中清党，张作霖即于北京搜查苏联大使馆，逮捕中国共产党人李大钊等，表明与国民革命军皆反共，不必互相为敌。张作霖得到公使团同意，搜查远东银行、中东铁路办公处，逮捕58名中国人。在搜出的秘密文件中，竟发现莫斯科苏联共产党打电报给当时尚是革命政府顾问的鲍罗廷。还清查出苏联企图赤化中国之千余文件，查获并向外界公开共产国际发来大量指示、训令、颠覆材料（与冯玉祥合作企图取代北洋政府文件、红枪会及煽动农民纪录、中国共产党文件等，“苏联文证企图汇编”），证实苏联全面指挥颠覆中国政府的运动。苏联与中国共产党则强烈谴责中国国民党粗暴侵犯苏联使馆尊严，并认为此事件乃“帝国主义的挑拨，中国政府已沦为帝国主义者工具”。4月19日，苏联召回北京驻华代办及大使馆职员。4月，汪精卫回国，秘密前往武汉，武汉国民政府迎汪复职，“四一二事变后”开除蒋介石党籍，下令讨伐；南京国民政府也调兵遣将，对武汉政府军事包围和经济封锁，史称“宁汉分裂”。武汉国民政府决定继续北伐。此时武汉政府仍受鲍罗廷及共产党员控制，共产党员在湖南、湖北积极推行工农运动，组织工人罢工和没收地主土地，引起军人反抗。当时，入河南奉军五个军约十万人，分布在西平以北铁路线及开封、郑县等地，企图南犯。国民革命军由唐生智率三个纵队五万余人，从驻马店地区分路北进。

继续北伐

1927年5月，蒋决定继续北伐作战方案，分全军为三路进攻。北伐军先后克复扬州、泰州、徐州、蚌埠。
5月中旬，第二纵队歼灭奉军七个团占领西平、漯河；第一纵队击败奉军一部于上蔡，迫其一个旅投降。奉军约七万人，企图在临颖决战。5月27日，第二纵队发起进攻，受挫，第一纵队驰援，奉军伤亡逾万，向北撤退。5月28日，唐生智部占领临后，分别向郑县、开封挺进。冯玉祥率部参加北伐战争后，进军甘肃、陕西，转师东进，5月27日攻克洛阳，6月1日与唐生智部会师郑县。6月，克复郑州、许昌。6月7日，清江浦克复，孙传芳通电下野。6月2日，国民革命军占领开封，奉军败走河北、山东。不久，吴佩孚率少数卫队逃往四川。7月，“云南易帜”。四川刘湘通电归附中央。
汪精卫认为中国共产党一直受共产国际指使，其土地革命和武装工农政策，危害国民革命事业，遂决心清除党内中国共产党分子。7月中旬议决取缔共产党，罢免中共党员职务。8月1日，中共在南昌发动武装起事，武汉政府下令讨伐。7月21日，国民革命军在临城被直鲁军打败，撤往徐州。8月6日，国民革命军又在徐州中败于直鲁军，被迫南撤。武汉分共后，南京与武汉政府酝酿妥协。8月13日，由于作战指挥失利等原因，蒋中正通电下野辞总司令职，武汉政府宣布迁设南京。至8月19日，宁汉复合。。
徐州战斗以后，孙传芳乘机率安国军沿津浦铁路南下，渡过淮河，攻占滁县、宝应，直抵长江北岸的浦口一带，南京一带长江北岸尽为安国军所陷。武汉方面的“东征军”也向长江下游推进，有合击南京之势。安国军、五省联军于8月24日南渡长江，攻占南京以东的乌龙山、栖霞山。26日，安国军攻占龙潭。27日，夏威率国民革命军打败安国军，取得了栖霞山战斗的胜利。此后国民革命军与安国军反复争夺栖霞山。李宗仁、白崇禧、何应钦、刘峙等指挥国民革命军第一军及第七军最后于8月31日打败安国军，取得了龙潭战斗的胜利。孙传芳率安国军北撤。此战奠定了南京国民政府的基业。

统治中国

9月10日，国民革命军在全椒打败安国军。安国军一路北撤。1927年12月3日至12月10日，中国国民党中央执行委员会在上海召开第二届中央执行委员会第四次全体会议预备会，会议最后一天恢复蒋为国民革命军总司令。
1928年1月4日，蒋介石进南京呈报正式复职。此时北方冯玉祥和阎锡山均愿意归附。蒋致电冯玉祥、阎锡山及各将领准备北伐。2月28日，中国国民党中央政治会议决议冯玉祥为第二集团军总司令，阎锡山为第三集团军总司令，并命统归蒋指挥。
1928年4月，蒋联合冯玉祥、阎锡山及李宗仁共同讨伐张作霖。国民革命军所向克捷，连续攻克郯城、台儿庄、郓城、韩庄、临城、枣庄。第三军团在鱼台失利，蒋电令各军赴援。张宗昌下总退却令，惟孙传芳纠集余部，尚图顽抗。是月下旬，屡次攻克巨野、嘉祥，经西关攻克济宁、滕县、界河、鱼台、汶上、邹县、大名。连续攻克宁阳、兖州、曲阜、金乡。连续攻克莱芜、平阴、泰安、肥城。张宗昌部败退滦州，孙传芳在北京宣布下野，张、孙残部向国民革命军投降。
日本为干涉国军北伐，借口保护侨民，派军登陆山东，进驻济南，伺机寻衅。日本于1928年4月19日决定再次出兵山东暗助军阀张宗昌，4月21日驻天津的3个步兵中队抵达济南，4月25至27日，日军又连续在青岛登陆，沿胶济铁路运兵济南市，到4月28日，驻济日军已达3,000余人。日军在邻接济南城的济南商埠以纬四路为中心线，划为东西两个警备区，构筑工事，收容日本侨民。1928年5月1日，攻克济南，日军出阻，造成五三惨案，国民政府外交特派员蔡公时遇害。国民革命军当时在北军仍掌握制空权下，由第一军团刘峙指挥之顾祝同第九军所辖之第三师，首先攻入济南城内，各路会师完成任务，5月2日蒋总司令抵达济南并要求日军撤退，日军应允并撤出工事。蒋严戒北伐军勿予还击，并严令入济南部队，于5月3日夜退出城郊，派员与日军师团长福田商约束部队，未得要领。蒋同时命令济南驻军一律撤出，免生冲突。5月4日、5月5日，日军仍继续放枪发炮，并引张宗昌以飞机炸北伐军司令部。蒋为完成北伐，忍辱负重，勿予计较，限令北伐军星夜渡河，仅饬留李延年步兵团驻守。不料5月3日上午贺耀祖部队与日军双方发生冲突。5月6日，蒋移节党家庄，继续提兵北进，并吁召汪精卫、胡汉民回国，又切告奉系早日觉悟，日本阻碍北伐之阴谋，于是粉碎。另从外交交涉，向日军司令及日本外交部严重抗议，要日军同时撤出济南，请英美协助调停。北伐军连续攻克平阴、禹城、石家庄、临沂、德州、定县、张家口。蒋无视日本侵略者，与冯玉祥在济南以南党家庄车站会晤，绕过济南继续北伐。克复保定。

北伐结束

1928年5月底，国军包围京、津地区。6月4日晚，张作霖撤离北京，退出山海关外。张作霖坐火车抵达沈阳附近皇姑屯车站（京奉铁路和南满铁路交叉的三洞旱桥）时，被日本关东军预埋炸药炸死。张作霖身负重伤，稍后死亡。6月8日，国民革命军开入北京，光复京、津，宣布北伐结束，将北京改名北平。两周后，张作霖儿子张学良赶回沈阳，继任父职，东北局势复趋稳定；12月29日，张学良宣布东三省易帜，全国出现形式上统一局面。
国民革命部队详细资料请参考北伐部队情况条目。北伐前全国兵额约140万，北伐后增至230万人，军饷开支超过国家全部收入，所以亟需裁军，以减少军饷支出。