연평해전은 1999년 6월 15일과 2002년 6월 29일, 2차례에 걸쳐 북방한계선 남쪽의 연평도 인근에서 대한민국 해군 함정과 북한 경비정 간에 발생한 해상 전투이다. 북한이 북방한계선을 인정하지 않고 어선을 보호한다는 명분으로 침범 및 철수를 반복하던 중 발생했다. 1차는 북한 경비정 7척이 침범해 사격하면서 교전이 이뤄졌고, 해군은 북한 어뢰정 1척을 격침하고 5척을 파손시켰다. 3년 뒤 일어난 2차는 북한의 기습 사격으로 시작되어 북한의 SO·1급 초계정 등산곶 684호를 반파시키며 종결되었으나 고속정 1척이 침몰하고 전사자 6명, 부상자 18명이 발생했다.
1999년 6월 7일부터 14일까지 북한 경비정이 어선을 보호한다는 미명하에 해상의 북방한계선(NLL)을 무시하면서 침범 및 철수를 반복하였다. 대한민국 해군은 참수리급 고속정을 이용하여 북한 경비정의 선체 뒷부분을 부딪쳐 막는 일명 “밀어내기 작전”으로 대응하고 있었다.
1999년 6월 7일 인천광역시 옹진군 연평도 서북쪽 10㎞ 해상에서 북한 경비정 3척이 어선 보호 미명하에 북방한계선을 3.5㎞ 침범했다. 다음날에도 북한은 경비정 4척과 어선 10척을 북방한계선 남쪽 9㎞까지 침범시켰다. 이에 대한민국 해군은 고속정을 접근시켜 「교전규칙」과 「국제법」에 의해 퇴각을 강력하게 요구하였다. 그러나 북한은 경비정 3척을 추가 투입해 전적인 행동을 계속하였다. 6월 9일에는 북한 고속정이 대한민국 해군의 고속정을 충돌하여 손상을 입히기도 했다.
북한 경비정의 침범이 계속되자 대한민국 해군은 6월 11일 북한 경비정 4척에 대해 선체 뒷부분을 부딪치는 “함미(艦尾) 충돌작전”을 실시했다. 그러나 북한 경비정의 북방한계선 침범은 계속되던 중 6월 15일 오전 8시 45분경 북한 경비정 7척이 대한민국 해군 고속정에 접근하여 충돌공격을 실시하고, 이에 맞대응하여 대한민국 해군도 충돌공격을 가하였다. 양측간에 혼전이 벌어지던 중 오전 9시 28분 북한 함정이 먼저 사격을 가해옴에 따라 대한민국 해군은 자위권 차원에서 즉각 대응사격을 가하였다. 쌍방간의 교전은 오전 9시 42분까지 14분간 진행되었으며, 그 결과 북한은 어뢰정 1척이 격침되고 5척이 크게 파손 당하여 북으로 도주하였다. 반면에 대한민국 해군은 고속정 5척이 경미한 손상을 입었다.
제1차 연평해전이 벌어진 지 3년 후인 2002년 6월 29일 2002한일월드컵이 막바지에 이른 시점에서 북한은 다시 한번 북방한계선을 침범하여 무력 충돌을 일으켰다. 이날 오전 9시 54분부터 북방한계선을 넘기 시작한 북한 경비정들은 10시 25분 근접차단을 실시하던 대한민국 해군의 참수리 357호에 대해 집중사격을 가하였다. 이에 대한민국 해군도 참수리 357호와 358호가 대응사격을 개시하는 한편 인근의 제천 · 진해함(PCC)과 참수리급 경비정 4척을 투입해 격파사격을 실시하였다. 교전은 오전 10시 56분까지 31분간 진행된 후 북한의 SO · 1급 초계정 등산곶 684호가 반파된 채 북으로 퇴각함으로써 종결되었다.
대한민국 해군은 북한 경비정으로부터 기습 공격을 받은 참수리급 고속정 357호가 침몰되고, 정장인 윤영하 소령을 비롯해 한상국 상사 및 조천형 · 황도현 · 서후원 중사, 박동혁 병장 등 6명의 전사자와 18명의 부상자를 낳았다. 한편 북한은 약 30여 명의 사상자를 내고 SO · 1급 초계정 등산곶 684호가 반파된 채로 퇴각하였다. 정부는 2008년 4월 ‘서해교전’으로 불리던 이 전투를 ‘제2연평해전’으로 명명하고, 추모행사도 국가보훈처 주관하에 정부기념행사로 승격시켰다.
대한민국 해군은 연평해전을 계기로 교전규칙을 소극적 대응에서 적극적인 응전 개념으로 수정하였다. 이에 따라 북한 경비정의 북방한계선 침범시 “경고방송 · 시위기동 · 차단기동(밀어내기 작전) · 경고사격 · 조준격파사격”의 5단계 대응에서 “시위기동 · 경고사격 · 조준격파사격”의 3단계 대응으로 개정되었다.