中日甲午战争的爆发,使“帝党”与“后党”的矛盾进一步尖锐化了。
日本发动对中国的侵略战争,蓄谋已久。早在清同治七年(1868年),日本明治天皇登基伊始,便极力鼓吹军国主义,以实行对外扩张为基本国策,并将侵略矛头首先指向其近邻朝鲜和中国。明治政府抓紧改革军制,推行近代军事教育和训练,积极扩军备战。
清政府对日本的侵略野心有所察觉,北洋大臣李鸿章曾指出日本将为“中土之患”。同治十三年(1874年)日本侵犯中国台湾事件后,尤其是中法战争后,清政府加强海防建设,以京师门户北洋为设防重点,主要防御对象为日本。光绪十四年(1888年),北洋海军正式编练成军,有舰艇25艘、官兵4000人。到甲午战争前,北洋舰队的大沽、威海卫(今山东威海)和旅顺(今属辽宁大连)三大基地建成。然清朝政治腐败,军事变革基本停留在改良武器装备的低级阶段,陆海军总兵力虽多达80余万人,但体制不顺,编制落后,管理混乱,训练废弛,战斗力低下。
光绪二十年(1894年)春,朝鲜爆发“东学党”农民起义,朝鲜政府于6月3日请求清政府派兵协助镇压。清军首批部队于6月8日抵朝。日军便以清军入朝、保护侨民为借口,大批调遣日军赴朝,向清军开战。8月1日,清政府被迫对日宣战。同一天,明治天皇也发布宣战诏书。
光绪帝认为:“倭人肇衅,挟制朝鲜,倘致势难收束,中朝自应大张挞伐。”因为光绪主战,因此“帝党”坚决主张对日宣战,企图一战打败日本。这在当时确实也代表了一些爱国将士的要求,争取了广大舆论界的支持。但主战派的“帝党”缺乏实力,只能利用皇帝的上谕和士大夫的清议,督促李鸿章出战。
“后党”的核心人物李鸿章主张“避战自保”,力主其他列强出面调停。慈禧太后既怕日本的武力,又害怕一旦战败会动摇自己的统治地位;同时,这一年又正逢她60岁寿辰,她一心想把这个“万寿庆典”办得隆重些,所以就更加厌战,但求尽快议和,以免耽误了庆寿。她支持李鸿章的主张,让他奔走俄、英公使之间,乞求欧美各国出面调停。一些主战派官员又纷纷上奏折,请求停办寿辰,将钱款用于军费,慈禧太后听了更是怒不可遏,气冲冲地对御前大臣说:“今日令吾不欢者,吾亦将令彼终身不欢。”
由于统治集团主战、主和意见分歧,相互掣肘,事先既未组成专门的作战指挥机构,更无统筹全局的战略指导。始寄希望于俄、英等国的“调停”,继则在海陆战端已启的情况下仓促宣战,并命令北洋大臣李鸿章“严饬派出各军,迅速进剿”,沿江、沿海“遇有倭人轮船驶入各口,即行迎头痛击,悉数歼除”。实际上是实行海守陆攻的作战方针。据此,清廷决定增调陆军赴朝,先在平壤集中,然后南下驱逐在朝日军;以海军务舰队分守各自防区海口,北洋舰队集结于黄海北部,扼守渤海海峡,确保京畿门户安全,并策应在朝清军。
8月上旬,总兵卫汝贵、马玉良、左宝贵和副都统丰升阿等四部援朝清军万余人先后抵达平壤。9月15日,日军分三路总攻平壤,战斗甚为激烈。午后,玄武门失守。入夜后,叶志超等弃城而逃,至26日全部退至鸭绿江以北中国境内。在陆军争夺朝鲜半岛的同时,日本海军联合舰队亦前出至黄海西部,甚至闯到威海卫和旅顺军港挑战,企图寻机与北洋舰队进行主力决战。北洋舰队在丰岛海战后拘于“保船制敌”之令,主要巡弋于威海、旅顺之间,将黄海制海权让给日本海军。9月上旬,清廷鉴于平壤将有大战,拟由海路迅速运兵赴援,北洋舰队奉命护航。9月17日,北洋舰队在完成护航任务后正准备由大东沟口外返航,突与搜索前进的日本联合舰队遭遇,随即爆发了著名的黄海海战。战斗历时5个多小时,北洋舰队沉毁5舰、伤4舰,日本联合舰队伤5舰。
平壤之战和黄海海战后,日本为实施“作战大方针”中直隶平原决战的计划,决定以陆军第二集团军向中国辽东半岛进行登陆作战,突破渤海湾门户。陆军第一集团军则向鸭绿江清军防线发起攻击,造成对清朝祖宗陵寝之地奉天的巨大压力,掩护第二集团军的登陆作战。清廷采纳李鸿章之议,实行“严防渤海以固京畿之藩篱,力保沈阳以顾东省之根本”的平分兵力方针。在实际兵力部署方面,由于对日军主攻方向判断失误,以及过分眷顾祖宗陵寝,清廷集重兵于鸭绿江一线和奉天、辽阳之间。同时,为保卫北京,又令各省抽调兵力,驻守山海关至秦皇岛之间,以及天津、大沽、通州等地。以上措施致使地处渤海门户正面的辽东半岛兵力不足,又多系临时填防部队,加之黄海制海权已被日军所得,失去海军掩护,防御极其空虚。
鸭绿江江防之战开始于10月24日。驻守鸭绿江北岸的清军共82营约3万人,四川提督宋庆为诸军总统。防线分中、东、西三段,以九连城一带为主防御阵地。兵力成一线部署,各部之间缺乏协同,纵深内又无强大预备队。日军第一集团军先于九连城上游的安平河口突破成功,继于虎山附近的鸭绿江上搭浮桥抢渡并攻占虎山。其他各部清军闻虎山失陷,不战而逃。26日,日军未遇抵抗即占领九连城和安东(今丹东)。清军鸭绿江防线崩溃。
在日军第一集团军进攻鸭绿江清军防线的同一天,大山岩上将指挥日军第二集团军2.5万人在日舰的掩护下,开始在旅顺后路的花园口登陆,日军的登陆活动历时十余天,清军竟坐视不问。11月6日,日军攻占金州(今属大连)。7日,分二路向大连湾进攻,发现清军早已溃散,唾手而得大连湾。17日,日军开始向旅顺口进逼。驻守旅顺口地区的7名清军统领互不统属,1.4万余名官兵军心涣散。18日,日军前锋进犯土城子,只有总兵徐邦道指挥拱卫军奋勇抗击。22日,日军陷旅顺口,并血洗全城。
日军攻占旅顺后,大本营鉴于渤海湾冬季封冻,登陆困难,决定暂时搁置直隶平原决战方案,代之以进攻威海卫,消灭北洋舰队,为尔后直隶平原登陆决战做准备。为此,日军以陆军第二集团军为基础组建“山东作战军”,大山岩上将任司令长官,共2.5万余人。又令联合舰队协同山东作战军作战,并以陆军第一集团军在辽东战场进行佯攻,继续吸引清军主力。
清廷对日军主攻方向再次判断失误,以为日军第一、第二集团军将并力攻取奉天,以主力打通锦州走廊,进逼山海关,然后与从渤海湾登陆之部队会攻北京。因此以重兵驻守奉天、辽阳及天津至山海关一线,关内外总兵力达10万以上,而于日军的主攻方向山东半岛则仅部署官兵3万余人,其中驻守荣成(今旧荣成)的仅1400余人。至于北洋舰队,则根据李鸿章“水陆相依”的防御方针,龟缩于威海卫港内。
1895年1月20日,日“山东作战军”在荣成龙须岛登陆,占荣成,随即分南北两路向威海南帮炮台进行抄袭。30日,南帮炮台陷落。2月1日,日军占领威海卫城。此后,日军水陆配合,攻击刘公岛和港内北洋舰队。北洋舰队提督丁汝昌等先后自杀殉国。17日,威海卫海军基地陷落,北洋舰队覆灭。
威海卫失陷后,清廷求和之心更切,遂派李鸿章为全权大臣,赴日议和。4月17日,签订中日《马关条约》,甲午战争结束。日军未经直隶平原决战便达到了预期的侵略目的。
甲午战争失败后,光绪帝开始考虑如何振兴国家,雪此大耻。