殖民者调动一艘最大的军舰“赫克托”号,气势汹汹地开了过来,阻止郑军的船只继续登岸。郑成功沉着镇定,指挥他的60艘战船把“赫克托”号围住,随即一声令下,60多只战船一齐开炮,把“赫克托”号击沉了。还有3艘荷兰船见势不妙,吓得掉头就跑。
随后,郑成功派兵猛攻赤嵌。赤嵌的殖民者拼死顽抗,一时攻不下来。有个当地人为郑军出主意说,赤嵌城的水都是从城外高地流下来的,只要把水源切断,敌人就会不战自乱。郑成功采用这个办法,没出3天,赤嵌的殖民者乖乖地投降了。
盘踞台湾城的殖民者企图顽抗,等待援兵。郑成功采取长期围困的办法逼他们投降。在围困8个月之后,郑成功下令向台湾城发起猛攻。荷兰殖民者走投无路,只得扯起白旗投降了。
1662年初,殖民者头目被迫到郑成功大营,在投降书上签了字,灰溜溜地离开了台湾。收复台湾后,郑成功在台湾设置行政机构,将赤嵌城改为安平城,在台湾设承天府,下辖天兴、万年两县;将台湾城改为安平镇。建立了与大陆一致的郡县制,大力开发台湾,发展农业生产,鼓励开荒,招徕大陆移民,积极发展海外贸易,促进了台湾社会经济发展。他还带来了先进农具和耕作技术,高山族从此以后也同大陆一样使用牛耕和铁犁种田,生活逐渐安定。