中法战争

起因

19世纪下半叶，法兰西第二共和国开始侵入中国传统的属国越南。1856年，法国远东舰队因越南处死传教士炮轰土伦港（今岘港），并于1858年一度登陆占领。1858年，法军攻占西贡。1860年法国借第二次鸦片战争结束借用侵华法军进攻南圻，先后占领嘉定、定祥、边和、永隆等省和昆仑岛。1862年6月，法国和越南阮朝签订第一次《西贡条约》（即《柴棍条约》），将西贡一带的地区割让给法国。1863年，越南承认柬埔寨是法国的保护国。
1870年到1871年的普法战争中法国大败，暂时推迟了法国的进度。1873年11月，法兰西第三共和国驻西贡总督杜白蕾派安邺率军攻占河内以及海阳、宁平、南定等城。越南皇帝阮福时请当时在越南保胜地区活动的刘永福领导的独立武装“黑旗军”勤王。12月21日，黑旗军在河内近郊以600人配合越军突击十多人的法军分队，杀死安邺。阮福时为达到政治平衡，一方面和法国议和，于1874年3月15日签订了《第二次西贡条约》，承认越南是法国的保护国；另一方面则任命刘永福为“三宣副提督”管理宣光、兴化、山西三省，以黑旗军阻止法军北上。
1879年6月，法国驻海防领事土尔克称：“法国必须占领北圻……因为它是一个理想的军事基地，由于有了这个基地，一旦欧洲各强国企图瓜分清国时，我们将是一些最先在清国腹地的人。”
1881年7月，由法国总理茹费理主导的法国国民议会通过了二百四十万法郎的军费用于越南。1882年3月，法国西贡殖民政府派海军上校李威利（又译为李维业）率军数千于4月占领河内。1883年3月李威利一军占领南定。阮福时再次邀请刘永福出兵，在越南黄佐炎一部的支援下，于5月19日在河内城西伏击法军获得胜利，即纸桥之役杀李威利，法军阵亡35人，清越军阵亡50人。残余法军只能死守河内。刘永福之后并升为“三宣正提督”。法国政府随即宣布要“为她的光荣的孩子复仇”，拨给河内法军350万法郎。
法国马上任命西贡法军司令波滑（Alexandre-Eugène Bouët）继任东京法军统帅，并成立由海军少将孤拔为统帅的东京舰队。8月，波滑沿红河进攻黑旗军，同时孤拔率海军进攻越南首都顺化。波滑一军损失很大，波滑本人则被遣返巴黎。但孤拔一军却攻入顺化，阮福时正好病死，继位的越南（安南）皇帝阮福昇于8月25日和法国签订《第一次顺化条约》。至此越南已被法国征服，法国开始直接进攻中国。

海战及台澎战场

1884年8月5日，由于双方谈判破裂，法国希望占领基隆煤矿(今八斗子清国井)和破坏马尾造船厂逼使清廷和谈，于是令东京湾舰队司令李士卑斯率领三艘战舰强攻基隆，正式揭开攻台战事序幕。法军先对基隆港东的大沙湾炮台（今大沙湾石围）开火，炮台营官姜鸿胜督炮还击，五发炮弹中有三发击中法军旗舰，但三艘法舰火力猛烈，摧毁守军炮架，并引发一处弹药库爆炸，火势延烧到紧邻的村庄。10时许法军派遣陆战队约200名由二沙湾登陆，午后再派水雷分队彻底破坏占领区内的炮台设施。姜鸿胜所部则接获密令撤退，官兵伤亡60余人。隔日法军派遣陆战队攻入鸡笼市街时却中清军福甯镇总兵曹志忠的埋伏，败退回舰。李士卑斯只好率领舰队回到马祖。
由于基隆的失败，1884年8月22日，法国海军部长命令中国海舰队司令孤拔攻击清朝南洋水师，摧毁福建沿岸海防设施。马江海战，孤拔乘贝亚德号率远东舰队突袭全歼驻福建马尾的福建水师。时任日本“天城”舰舰长的东乡平八郎率舰随远东舰队观察战局；后来法军攻打台湾时，东乡亦随行观察。
10月初，法舰转而进攻台湾；刘铭传10月3号抽调兵力回防淡水(沪尾)仍保留300多名军力防守狮球岭及基隆河但到10月4日狮球岭被法军攻下、10月7日至8日法军率800名海军陆战队攻向淡水，当时刘铭传已事先抽掉兵力预防法军来犯，并且沉船巨石，守江封港堵住淡水河口，在沙仑海岸筑堡垒据守，防止法军直接突入淡水河，避免控制台北城，且在英方的协助下于淡水河口布防水雷，清军在淡水守将以台湾总兵章高元，漳州总兵孙开华领兵下力抗法军进攻，法军陆战队只好抢滩淡水河口，双方往返冲杀死伤惨重，最后法不支只能撤退，台北沪尾之围稍解法军死伤惨重，10月13日清军再增援乡勇团练已增至6000多人军力，由于法军强攻淡水不下，准备再改由基隆方面攻向大稻埕，法军在沪尾（今新北市淡水区）抢滩登陆时被清军及台湾乡勇击退，转而从10月23日起对台湾实行海上封锁，同时清军铭字部再由卑南调军增援，法军则增兵至1800人攻向基隆，11月11日曹志忠欲夺回狮球岭阵地仍被法军击退，11月17日暖暖之役由周玉谦团练为主，林朝栋，曹志忠支援防守，阻挡法军连续3日的猛列进攻，使法军无功退回，至11月18日法军欲攻下月眉山，于是1885年1月25日法军发动第一次月眉山之役，由曹志忠，林朝栋，张仁贵共同协防，但不敌法军，清军退至基隆河南岸，情势岌岌可危。从1884年10月到一直到隔年1885年4月，法军曾多次进军台北却遭受阻，一直被困于基隆，1885年初，海军的步兵队和从马赛调来支援法国外籍兵团从基隆向台北进攻而不果（雾峰林家的栋军及北部民团助刘铭传挡下法军），在第二次月眉山战役中成功拿下月眉山，但仍被困于基隆河北岸，而未曾渡过基隆河，基隆之法国公墓、暖暖金山寺壕沟、碇内尖炮台，就是当年战后所留下。

封锁台海期间，法舰队截击清南洋水师5艘往援台湾的军舰，在浙江石浦击沉驭远与澄庆，并追击其余3舰至杭州湾口，与镇海炮台对峙驳火。3月底，由于法军困于基隆，未能占领台北，需要更好谈判担保品，于是出兵攻占澎湖；孤拔于6月11日因病死于澎湖妈宫（现为澎湖县马公市）。

后期陆战

1884年两广总督张之洞急调广西提督冯子材指挥战斗。冯子材在关内选择险要地势，挖壕修筑炮台。然后出兵夜袭法军驻地文渊城，诱使法军进攻。
1885年3月23日法军第2旅900余人从谅山出发，攻入镇南关，遭到清军及黑旗军43,000人的伏击；冯子材指挥“黑旗军”以及“恪靖定边军”进攻，将法军逼下长城，陷入伏击圈。3月24日，法军分三路发起反击，66岁的冯子材及二子亲身投入肉搏战，经过两天激战，法军伤亡93人，战线崩溃；清军乘胜追击，3月26日攻克文渊城，3月28日攻克驱驴（Ky Lua），3月29日克谅山，3月31日克屯梅、观音桥，4月2日克谷松。当冯子材集结四万军力准备进攻河内之际，清廷于4月4日和法方协议停战；清廷乃下诏撤军。

结局及影响

1885年3月30日，赫本哲放弃谅山的消息传到法国，法国议会以306对149票否决“军费追加案有先议权”议案，总理茹费理旋引咎辞职。
清朝财政方面，四川总督丁宝祯在1884年就拿不出供鲍军的十万两银，说“鲍超军需甚重，措办为难”而海战失败后清政府清楚已无法阻止法国军舰北上大沽口，同时朝鲜又发生甲申政变，张之洞五营兵勇和物资因此不能支援台湾。于是在1885年初出现了日本和法国结盟攻击清朝的危险“而正是由于4月和法国议和，才消除了这种危险。”
在英国调停下，清朝以李鸿章为全权代表与法国公使巴德诺（Jules Patenôtre）在天津会谈，于1885年6月9日签订《中法新约》（即《中法会订越南条约十款》），主要内容就是确认1884年先前法国与越南签订的《第二次顺化条约》，其中承认了法国对越南的宗主权。和约签订之后，法国军队撤出澎湖，停止对台湾的封锁，清朝军队撤出越南。
湘军元老左宗棠对于李鸿章签订的条款十分不能谅解，对他作出如下批评：“对大清而言，十个法国将军，也比不上一个李鸿章坏事”；“李鸿章误尽苍生，将落个千古骂名”。淮系潘鼎新等也反击对“恪靖定边军”首领王德榜、台湾道道尹刘璈等左系人物攻讦。
就《中法新约》条款，有一派看法认为前约签订时战局对中国不利，谈判新约时李鸿章却未善加利用后期对中国渐趋有利的战局，坚持修约，终使中国丧失一大藩属。然而另一看法认为新约内容尚称合理，因为在停战前，越南90%以上领土及主要城市（包括顺化、河内、西贡）都已由法军控制，而清军只夺回谅山。
战争后，清政府进一步意识到了海防的重要性，乃加紧建立北洋舰队，并于台湾设省，开始大力建设。
另外，在被英国殖民的香港华人同样采取了行动，为了支持清廷而发动大罢工，港英政府虽然以镇压的手段来制止，但最后仍然妥协，这也是香港华人在殖民统治下开始争取权利的第一步。