四月二十六日,清軍泉州港水師船隻200餘艘,進到祥芝澳,步兵登陸,船隻傍山邊而行,停泊在圍頭,步兵就地紮營。
鄭成功則一切準備完畢,隻等敵人來攻時給其回擊。
五月,李率泰和素達,帶領降將施琅、黃梧等人合力進犯。素達兵進海門,李率泰兵進金門附近浯嶼。
五月十日,雙方在海上大戰,各有傷亡。中午時分,鄭成功站在中軍艦上,一手拿著指揮旗,一手拿著寶劍,問左右將領:“海麵是否已經平靜了?”諸將回答:“平靜了。”鄭成功胸有成竹地說:“海流平靜就潮轉,潮轉風就隨之而轉。”於是下令發出信號,命令各船發起進攻。鄭成功下到八槳快艄上,來往巡視,鼓舞士氣。
果然,頃刻之間,海麵上刮起了強大的東風,波濤翻滾,船隻上下猛烈顛簸。
鄭成功手持戰旗,指揮各船與清軍交戰。清軍在鄭軍的攻擊下陣腳大亂,死傷無數。李率泰領兵從浯嶼趕來增援,被早有準備的鄭軍兩麵夾擊,焚燒清軍船隻。敵船處於逆潮之中,船隻互相碰撞,損壞無數。船上清軍,站立不穩。鄭軍掩殺過來,清軍大敗。
清軍由素達、施琅率領另一部,與鄭將右虎衛陳鵬相通,準備趁機渡過廈門。由於陳鵬的疏忽,其部將陳蟒率兵突殺清兵,殿兵鎮陳璋聽到殺聲也來夾擊清軍。清軍所有先鋒船隻,全部被擊沉。
素達、李率泰收拾殘兵,狼狽逃回,士兵損失十之六七。
而通敵的陳鵬,被鄭成功抓住,訴斥其罪過,並將其斬首,以正軍法。
從此以後,素達、李率泰的軍隊再也不敢來進犯了。在軍事處,清廷到了對鄭軍無可奈何的地步。
六月,鄭成功派使者去見素達、李率泰,並送去婦人穿戴的衣帽,要求他們進行決戰,否則,便接受巾幗表示低頭認輸。
素達、李率泰忍受鄭成功的侮辱,始終不敢再戰。素達在朝廷的壓力下,不久便在福州吞金自殺了。
鄭軍雖打敗了清軍的進攻,暫時保存了基本力量,但整個抗清形勢,對鄭軍是極為不利的。
清軍在對鄭軍武力會剿失敗後,暫停了進攻,但卻同時加緊了對鄭軍的封鎖。鄭軍的處境日益不妙起來。