公元1667年,也就是康熙七年,企图利用和谈方式招抚台湾的孔元章又一次宣告失败。
此时距离清军入关、定都北京,已有23年之久;就是从康熙登基的1661年算起,台湾也孤悬于外了7个春秋。一国建立二十余年而有另一政权仍存,一君继位七载而不能完成一统,这是奇耻大辱!
此时,14岁的康熙接到了一封来自福建水师的请战书,施琅在《边患宜靖疏》中这样言明了收复台湾的必要性:1、东南五省是赋税重地,有台湾则必须重兵防守,致使东南人民穷苦;
2、平台湾则东南安定,既可获得发展民生的安定环境,也可裁撤军队恢复生产;3、台湾不平则边境不宁,自家前朝问题都无法根除,又谈什么万国宾服?14岁的康熙对此非常赞赏,急忙召见施琅入京商议收复台湾之事。两人筹谋良久后,于第二年正式在朝议中拿出了收复台湾的实际方案。包括但不限于:台湾实际军力不足2万,战船约200艘;福建水师有1万余人,需招募数千精锐补充至2万人;征台应当剿抚并用、兵贵神速,争取一战而定。但此时康熙刚满15岁,亲政不足两年,托孤大臣鳌拜毫不客气地否决了征台方案。康熙只好留施琅在京,秘密筹划征台事宜,施琅这一等就是13年。
直到1682年10月,平定了吴三桂叛乱的康熙,才将施琅调回福建。施琅收复台湾的备战工作,前后进行了近8个月,主要在福建厦门完成。1683年6月14日,施琅带领大小战船238条,水师24000人出福建铜山岛,横渡东海直扑澎湖列岛。第二天下午,清军到达澎湖列岛南部的八罩岛休整。同时驻守澎湖列岛的郑军哨兵,发现清军登岛并上报总部。郑军水师主将刘国轩,决定沿主岛娘妈宫沿线设防,与清军水师进行决战。
6月10日,施琅水师7艘大鸟船,攻入郑军防线。刘国轩指挥郑军水师,合围孤军深入的7艘大鸟船,当时海水涨潮、清军水师先头部队被分割包围。施琅亲自带人冲击郑军防线,双方激烈交战,以致于施琅右眼为火铳所伤,才救出被包围的7艘大鸟船。首次交战,施琅水师脱节、损失偏大,施琅本人也右眼受伤,所以决定撤到西岛休整。郑军水师刘国轩副将林升,也在交战中被大炮轰断了左腿,所以没有及时反攻给了施琅修整的时间。
6月16日,休整了5天的施琅,决定发起总攻。这次施琅将麾下战船分为左、中、右三路:自己带领战船56艘,主攻郑军防守核心的娘妈宫;左路由总兵陈蠎带战船50艘,攻击鸡笼屿、四角屿,同时合围郑军;右路由总兵董义带领战船50艘,攻击牛心湾合围郑军;其余战船作为预备队,见机行动、攻击郑军薄弱处。施琅的这次部署非常完美,将238艘水师战船分为三路,以分割指挥方式避免了此前臃肿指挥下的脱节问题。既发挥了各部署的主观能动性,又使得清军战船得以全面展开,增加了郑军防线压力,为攻击薄弱处的预备队提供了攻击机会。同时三路协同而进,将自身实力得到了最大程度的发挥。
当天海上吹起南风,施琅水师全线进攻,郑氏水师溃败。郑军主将刘国轩逃回台湾,副将邱辉、江胜战死。190艘战船被焚毁、缴获,死伤12000人、被俘5000人,郑氏水军全军覆没,施琅取得海战绝对性胜利。收复澎湖列岛后,施琅的做法非常有借鉴意义:他暂停了进攻攻势,而是开始招抚台湾郑氏;禁止杀戮,将降兵送回台湾;发布《安抚输诚示》,并派原郑军主将刘国轩副将曾蜚前去招降。当时的台湾已历三世,郑成功之子郑经死后,两个儿子郑克塽和郑克臧之间爆发激烈矛盾。郑克塽岳父冯锡范毒死郑克臧,扶持年仅11岁的郑克塽上位,本就闹得台湾人心惶惶,再加上清军在大陆的经济封锁,粮食问题日益尖锐。早在郑经时期,就规定每户人家,每月必须多征收粮米一斗充当军饷时。英国商人就发表了这样的看法:“台湾王因其财富被消耗,故每日向人民横征暴敛,亦不能使军队满意。是以我国不惟受敌人(清军)之威胁,亦恐军队(郑军)因缺饷而叛变”。这种矛盾在平时尚能镇压,但当一战受挫后必然全面爆发。所以施琅收复澎湖列岛后,并未进攻台湾,而台湾却在当年八月就接受了清军的受降。整个台湾岛本土不战而降的另一面,是苦苦和谈二十余年无果。一战下去、恩威并施,和谈不谈而和,这就是施琅收复台湾最精髓的经验积累。
此后,清军在台湾设府,台湾驻军8000,澎湖列岛驻军2000,从实际控制上将台湾化为了大航海时代中华文明唯一而又璀璨的收获。