1938年,日本为了连接华北和华中,南北对进,夹击徐州;“徐州会战”爆发。1937年12月,日军侵占南京后,北渡长江,进至安徽;华北的日军南渡黄河,占领济南。日本计划南北对进,先攻占徐州,接着沿陇海铁路西取郑州,然后夺取武汉。中国在徐州一带的军队由第五战区司令长官李宗仁指挥,调集60万兵力,抗击日军南下、北进。
1938年1月26日,日军向凤阳、蚌埠进攻,中国守军向西撤退。日军占领蚌埠后,向淮河北岸发起进攻;中国守军顽强抵抗,双方在淮河隔河对峙。2月下旬,华北日军南下,占领沂水、日照等地,扑向临沂;中国守军击退日军。另一路南下日军,进攻滕县,守军英勇抗敌,苦战后滕县失守。日军占领滕县后,直扑台儿庄;日军兵力4万多人,坦克七八十辆,大炮百余门,还有大批飞机。3月23日,日军到了台儿庄;3月24日,日军用大炮轰炸台儿庄的防御工事,然后坦克在先,步兵跟进,冲进台儿庄。台儿庄的房屋是石头建造的,中国守军把每间房都作为堡垒,死战不退。日军攻打了三昼夜,发生激烈巷战;战至4月3日,中国守军已阵亡大部分,多数阵地被日军占领;中国守军拼死不退。日军又调集大炮坦克猛攻,李宗仁下令坚守,同时急令汤恩伯兵团南下增援。4月4日黎明,汤恩伯率军赶到,出现在日军背后,包围了日军。台儿庄守军杀出,经过激战,除一部分日军突围后,台儿庄日军被歼灭;日军尸横遍野,坦克被炸毁30多辆,日军的车辆、弹药、马匹到处都是;共歼灭日军1万多人,中国取得抗战以来最大的一次胜利。
“台儿庄大战”后,中国集中兵力在徐州一带,准备再一次聚歼日军。日军以一部分兵力正面牵制中国军队,主力向西迂回,企图从侧后包围,消灭中国守军主力。到5月中旬,蒋介石意识到:日军是要包围中国守军主力。蒋介石和将领们研究战局,觉得再守徐州已不现实,决定突围放弃徐州。蒋介石电令李宗仁,撤离徐州,火速突围。5月16日,中国守军往河南、安徽的山区突围;中国军队边战边退,秩序良好;各路军队都杀出重围。留守徐州的刘汝明部,对日本进行重大杀伤后,巧妙撤出徐州。日军到了徐州,发现是座空城。
1938年5月,土肥原贤二部,也就是“日军十四师团”,孤军深入到河南境内;中国第一战区司令长官程潜调集三路军队,准备将其歼灭。这即“兰封会战”。王耀武部主动进攻日军,沉重打击了日军。日军集中力量向杨固集、双塔集地区进攻,第二十七军阵地被日军突破,桂永清率部队撤往开封、杞县,令八十八师防守兰封;可八十八师师长龙慕韩在桂永清撤走后,擅自弃城逃走,日军不战而占领战略要地兰封。守砀山的一〇二师在日军攻击下,也丢弃阵地逃跑,日军占领砀山。蒋介石令薛岳指挥各军,包围日军第十四师团,将其歼灭。薛岳指挥军队猛攻日军十四师团,收复了兰封;日军主力收缩退到三义寨附近,被中国军队包围。5月28日,日军向中国二十七军阵地反击时,桂永清再次擅自撤退。蒋介石下达手令,兰封附近只有日军五六千人,中国十二个师却歼灭不了,务必将其歼灭。日军十六师团进攻商丘,程潜电令商丘守将黄杰,死守商丘,在兰封的敌人被歼灭之前,不得放弃。可黄杰不听程潜的命令,擅自撤往开封等地;5月29日,日军占领商丘。商丘的失守,严重威胁到围歼兰封日军的薛岳部的侧后;只能调整部署,调军防守商丘方向的日军。日军十四师团被围在兰封,日本调集兵力进攻开封、杞县,又调黄河北岸的日军强渡黄河,增援十四师团。中国守军决定向西撤退。6月3日夜晚,开始转移撤退。日军追击,占领兰封、开封。蒋介石决定炸开黄河大堤,阻挡日军的攻势。6月,在花园口掘开大堤,黄河水蔓延而下;河南东部成为一片泽国。日军的攻势一定程度上减缓了,可几十万老百姓被淹死,上千万人流离失所,无家可归。
1938年6月15日,日本决定进攻武汉。为保卫武汉,国民政府调集十四个集团军、50个军、战机200架、军舰30多艘,总兵力110多万;苏联援华志愿航空队也参加了“武汉会战”。中国军队的防御分为“长江北岸”和“长江南岸”,第九战区司令长官陈诚负责南岸,第五战区司令长官李宗仁负责北岸;蒋介石为总指挥。日军的作战计划是沿长江两岸进攻,调集几十万兵力,军舰120多艘,飞机500架。
1938年6月11日夜晚,日军占领安庆;乘海军舰艇沿长江西进。6月中旬,到了马当要塞的封锁线外。马当要塞,是由德国顾问设计建造,十分坚固;蒋介石希望能凭借马当要塞,阻止日军攻势一个月。日军攻打无果,决定从陆上迂回进攻。马当守军是十六军,军长李韫珩;大战开始前,李韫珩开设了个抗日军政大学,6月24日,李韫珩去参加结业典礼喝酒去了;日军乘机登陆攻打,防守马当要塞的海军陆战队二大队顽强抵抗,队长鲍长义赶紧发电报求援。可援军迟迟不到,二大队坚持了两天,炮弹也打光了,为防止全军覆没,只得撤离阵地。日军占领长山阵地,十六军反击,未能成功,马当炮台也丢失了。蒋介石原本希望马当炮台守一个月,不想一星期就丢失了,骂了顿陈诚;陈诚命令十六军和四十九军反攻马当。日军依靠马当要塞坚固的工事回击,中国军队伤亡惨重,陈诚下令退守彭泽。日军继续开进,占领彭泽、湖口、九江。日军攻占九江后,攻占瑞昌、箬溪、富池口要塞;到10月22日,阳新、大冶、鄂州相继失守。日军冈村宁次派一部队悄悄穿插到中国军队后方,想包围南浔路的20万中国军队;执行任务的是日军一〇六师团,可一〇六师团迷路了。薛岳指挥部队包围了一〇六师团,日军派兵增援、被击退。薛岳下令全线出击,日军被歼3000多人,这就是“万家岭大捷”。
在长江北岸,日军占领桐城、潜山、太湖、宿松、黄梅。丢失黄梅后,白崇禧指挥部队反击,日军据险顽抗,施放毒气。白崇禧见强攻不成,就攻击日军的后方,切断了日军第六师团的补给线和退路;第六师团在南京犯下滔天大罪,白崇禧计划全歼该敌。第六师团凶残的反击,放毒气;冈村宁次派海军补给了第六军团弹药和兵员。第六军团补给后,开始反攻;中国军队向广济撤退,日军追随;广济失守。日军开始攻打田家镇,田家镇是武汉的屏障,田家镇若丢失,武汉不保。中国军队重兵把守田家镇;9月24日,田家镇侧翼后方的富池口被日军攻陷,中国守军只得从田家镇撤退。在大别山以北,中国军队和日军苦战,有胜有负;日军占领固始,向信阳进军。在信阳,有国军的坦克部队,和最大的炮兵旅;三个军七个师对战日军两个师团,大战20多天,信阳还是丢了。
在武汉会战时,日军进攻广州,中国军队反击;即“广州战役”。广东的军队半数被抽调到武汉了,广州兵力空虚。广东方面向蒋介石报告,蒋介石以为是日军制造的假情报,是让中国从武汉抽调部队到广东。1938年10月11日,日军在广州大亚湾登陆;到10月21日,广州沦陷。广州失守后,粤汉铁路切断,武汉没有必要重兵防守了。蒋介石吸取南京保卫战的教训,主动放弃武汉,10月25日撤退,26日,日军占领武昌、汉口;27日,占领汉阳。武汉沦陷。