刘铭传于1884年7月16日抵达基隆,第二天即巡视要塞炮台,检查军事设施,并增筑炮台、护营,加强台北防务。在他到达基隆的第15天,战争就爆发了。
1884-1885年的中法战争,分为前后两个阶段,第一阶段在越南北部及中越边境进行;第二阶段战火扩大到福建台湾沿海,有陆战和海战两个战场,尤以台湾陆战最为激烈。这是台湾进入半殖民地半封建社会以来一次规模最大、历时最久、战斗最为激烈的反抗殖民侵略的战争。在此之前,鸦片战争时期英国军舰对于台湾至多是骚扰牵制;日本因琉球船民被杀侵犯台湾,双方也并未正式接触。此次法军侵台,实属决心占据,事态的严重远非前两次可比,可以说,这是近代台湾真正的大保卫战。
1884年8月4日,法舰直逼基隆,法军远东舰队司令孤拔和副司令利士比派一副官上岸,要求守军“于明日上午八时以前将炮台交出”,守军置之不理。5日,法舰在利比士的指挥下齐向基隆炮台猛烈开火,摧毁了清军数处炮垒及营房,守军于死伤十余人后向内地撤退。法军登陆,占领基隆港,将港内各种设施和炮台尽行破坏。6日下午,法军陆战队向基隆市街搜索前进,并攻击附近高地。守军在刘铭传亲自统率下奋勇从各个方向进行反击,逐渐缩小包围圈。经过几小时的激战,法军伤亡100余人,狼狈逃回军舰,侵占基隆的计划破产了。
法军侵犯基隆首战即告失败,于是又向清政府提出新的和议条件,清政府再次拒绝。此时,法舰已有预谋地集中于福州马江,乘清军将吏相信“和谈大有进步”、丝毫不作准备之际,于23日下午发动突然袭击,把南洋水师所有战舰全部击沉,然后炮轰马尾造船厂和马江沿岸各炮台。从此,法军就牢牢地掌握了台湾海峡的制海权,得以随心所欲地全力侵台。
10月1日,孤拔率多名士兵在十余艘军舰百余门大炮的猛烈炮火掩护下再犯基隆。守军奋勇抵抗约两小时,伤亡百余人,最后被迫后撤。法军乘势登陆进攻,基隆港湾及周围阵地尽失,基隆市区告危。这时,法军在利士比的指挥下正进攻沪尾。刘铭传在得到大批法军猛攻沪尾,沪尾不断告急要求增援的消息后,考虑到台北府城是统帅部所在地,军资饷械集中于此,不可稍有疏虞。为保台北,沪尾重于基隆,于是决定撤离基隆,移师沪尾。法军占领基隆后,于8日又对沪尾发起进攻。利士比以战舰七艘轰击沪尾市街和各处据点,然后登陆,分几路前进。法军不惯于陆战,一进丛林,便失去了统一指挥,只得各自为战。这时,预先埋伏在各处的清军从