威海卫之战是保卫北洋海军根据地的防御战,也是北洋舰队的最后一战。日本大本营对山东半岛的作战部署为“海陆夹击”北洋舰队。李鸿章在建完各炮台后,即调派绥、巩军各4营分别驻守北帮炮台、南帮炮台。同时在刘公岛上驻扎北洋护军,并在海港东西两口布设防材和敷设水雷248颗。整个山东半岛大约有步兵约40个营、骑兵8营、水雷2营。威海卫港内尚有北洋海军各种舰艇二十六艘。
1895年1月20日,大山岩大将指挥的日本第二军,包括佐久间左马太中将的第二师团和黑木为桢中将的第六师团,共两万五千人,在日舰掩护下开始在荣成龙须岛登陆,同时日联合舰队第1游击队在登州实行炮击,山东巡抚李秉衡由于弄不清楚日军究竟要在何处登陆,只好分兵把口,“时刻严防”,23日,日军在荣成全部登陆完毕。26日,日军第2师团和第6师团分别从荣成出发,各由南北两路,分头向百尺崖所方向前进,在战斗中,清军赵埠嘴炮台击沉日舰1艘。
30日,日军集中兵力进攻威海卫南帮炮台。驻守南帮炮台的清军仅六营三千人。营官周家恩守卫摩天岭阵地顽强抵抗,最后被歼灭。日军左翼司令官大寺安纯少将被清军炮弹打死,这是日本在甲午战争中唯一阵亡的将军,左翼支队的4个中队日军被迫退至冯家窝。由于兵力悬殊,南帮炮台终被日军攻占。2月3日,日军占领威海卫城。威海陆地悉数被日本占据,丁汝昌坐镇指挥的刘公岛成为孤岛。日本联合舰队司令伊东佑亨曾致书丁汝昌劝降,遭丁汝昌拒绝。
5日凌晨,旗舰定远舰中雷搁浅,仍做“水炮台”使用。10日,定远弹药告罄,刘步蟾自杀。11日,丁汝昌在洋员和威海营务处提调牛昶昞等主降将领的胁迫下,拒降自杀。洋员和牛昶昞等又推署镇远管带杨用霖,出面主持投降事宜,杨用霖最终自杀。12日,由美籍洋员浩威起草投降书,伪托丁汝昌的名义,派广丙管带程壁光送至日本旗舰。14日,牛昶昞与伊东佑亨签订《威海降约》,规定将威海卫港内舰只、刘公岛炮台及岛上所有军械物资,悉数交给日军。1895年3月17日,日军在刘公岛登陆,威海卫海军基地陷落,北洋舰队全军覆没。
辽东之战持续的时间很长。自日军突破清军鸭绿江防线后,连占凤凰城、岫岩、海城等地。大清国调两江总督刘坤一为钦差大臣督办东征军务,授以指挥关内外军事的全权,并任命湖南巡抚吴大澄和四川提督宋庆为帮办,以期挽回颓势,在析木城四周部署了奉军、盛字练军、希字军、仁字军等,总兵力计27营,除步兵营外,有马队5营、炮队1营,约8000人。从1895年1月17日,清军先后四次发动收复海城之战,由于指挥不力,皆被日军击退。2月28日,日军趁胜追击,从海城分路进攻,3月4日攻占牛庄,7日不战而取营口,9日攻陷田庄台。仅十天时间,清朝百余营六万多大军便从辽河东岸全线溃退。