你們炮擊我海島,撞壞我漁輪,向你們提出嚴重抗議!”南越海軍見勢不妙,趕忙逃離了甘泉島附近海麵。
19日淩晨,南越軍艦又趁著黎明前的黑暗,偷偷地駛向西沙群島中的琛航和廣金兩島。靠近島嶼時,他們放下橡皮舟,載著荷槍實彈的士兵,妄圖偷襲占領兩島。中國民兵早已在島上做好了迎戰的準備,南越士兵剛一登岸,就被收繳了武器,趕了回去。
惱羞成怒的南越海軍集結了四艘戰艦,決定孤注一擲,同中國擔任巡邏護漁任務的海軍艦艇直接進行較量,西沙海戰已迫在眉睫了。
19日上午,激烈的海戰終於打響了。參加海戰的南越海軍的四艘軍艦是:2800噸的16號(又稱“李常傑號”)和五號(又稱“陳平重號”) 驅逐艦,1850噸的四號(又稱“陳慶餘號”)驅逐艦,945噸的十號(又稱“怒濤號”)護航艦。最初參加海戰的中國海軍也是四艘艦艇,即655噸的389號和1396號掃雷艦,337噸的271號和274號獵潛艇。四艘艦艇分為271獵潛艇編隊和396掃雷艦編隊。南越海軍的一艘驅逐艦就相當於中國海軍四艘艦艇噸位的總和,武器裝備也遠遠強於中國海軍艦艇,然而,海戰的結局卻是南越當局所始料不及的。
10點22分,南越四艘軍艦同時向中國海軍編隊開火。中國海軍編隊海上指揮所果斷地發出還擊的命令。
隨之,271編隊指揮員下令:“各艇找最近的打!”396編隊指揮員下令:“打,狠狠地打!”霎時間,早已上了膛的炮彈立即從四艘艦艇的數十支炮管中飛向敵艦。永樂群島海麵騰起了濃濃硝煙,響起震耳欲聾的炮聲。
396編隊把主攻目標指向南越海軍的16號艦,經過一陣猛烈炮擊後,因雙方相對運動,敵16號艦暫時脫離戰鬥。於是396編隊轉攻靠近的南越海軍十號艦。戰鬥中,389號艦在艦長肖德萬指揮下,打得十分英勇頑強。炮長劉占雲在密集彈雨中沉著指揮;標尺手歐思文根據彈著點迅速而準確地修定標尺距離;才上艦幾個月的瞄準手王堯林、黃德勝,透過濃烈的硝煙,死死咬住敵艦;裝彈手楊保和搬起炮彈十分麻利地推上炮膛。正在打得起勁的時候,火炮突然出現了故障,炮彈卡殼。炮彈擊發不過火,按射擊規定要過30秒鍾才能退彈,不然,就有爆炸的可能。但此時此刻,時間比金子還要貴重。非同尋常的30秒鍾,它可以噴射七八發炮彈,會給敵人造成重大殺傷;反之,停射30秒鍾,就有可能失掉有利的殲敵戰機,甚至造成自己的重大損失,不能等,一秒鍾也不能等!瞪圓虎眼的炮長劉占雲,喊了一聲:“閃開!”冒著生命危險打開炮閂,奮力拉出卡在炮膛的炮彈,順手扔進了大海。好險,旁觀的水兵將吊起的心放了下來。排除了故障,水兵們更加起勁地操起主炮,瞄準敵艦狠狠地打。南越十號艦指揮台連續挨了四發炮彈,炸得甲板上的偽軍隨著救生圈和裝備碎片紛紛飛上了天。
此時,396號艦也在有利的陣位上,咬住敵十號艦發炮狠揍。兩艦密切配合,越打越勇。艦長肖德萬機智地指揮389號艦邊打邊高速衝向敵十號艦,在靠近敵艦數十米距離時,389號艦的指戰員覺得使用輕火器發揮作用會更大,於是,艦上的機關槍、衝鋒槍一齊向敵艦打去,子彈似雨點般密集。在靠近敵艦更近些的時候,副艦長崔瑞勳抓起一顆手榴彈,拉開導火索,高喊:“用手榴彈打!”朝著敵艦甩了過去。頃刻,兒十枚手榴彈接連在敵艦甲板上開了花。炸得敵十號艦上的南越敵軍死的死,傷的傷,一片哭爹喊娘聲。在20世紀70年代的艦對艦海戰中,使用手榴彈的戰例實為罕見。不知是越軍被打得失去了判斷能力,還是故意誇大其詞以掩蓋敗績,戰後西貢當局的新聞發布官,竟然把這些手榴彈宣布為中國軍隊在西沙海戰中發射了“冥河式導彈”。