Een zeeslag is een gevecht tussen schepen of andere voertuigen die zich te water begeven. De meeste zeeslagen hebben zich op zee afgespeeld, maar een aantal hebben ook plaats gehad op meren of rivieren, en deze worden ook vaak zeeslagen genoemd, ook al klopt dat niet helemaal.
Hoewel de aard van de schepen die betrokken waren in zeeslagen drastisch is veranderd, van triremen via zeilschepen tot slagschepen, onderzeeboten en vliegdekschepen, zijn de meeste tactische principes hetzelfde gebleven, zoals het belang van manoeuvre voorafgaand aan de werkelijke strijd en de wenselijkheid van het afbreken van de strijd om niet het verlies van de gehele vloot te riskeren.
Er zijn ruwweg twee manieren om de vijand te verslaan:
De vijandelijke schepen vernietigen. Dit kan door het schieten van zware projectielen als kanonskogels, het in brand steken met vuurpijlen of branders, of de vijandige schepen te rammen opdat ze zinken.
De vijandige schepen veroveren. Dit gebeurt door middel van enteren.
De eerste beschreven zeeslag had plaats in 1210 v.Chr. bij Cyprus, waarbij de Hittieten de Cyprioten versloegen.