La bataille des Thermopyles a été provoquée par l'invasion de la Grèce par une armée perse sous Xerxès. Dans un effort pour empêcher l'armée perse d'avancer dans le sud de la Grèce, les Grecs, largement inférieurs en nombre, ont pris position à un col stratégique, infligeant de nombreuses pertes avant d'être trahis et envahis.
Après que son père Darius Ier ait perdu la bataille de Marathon contre les Grecs en 490 av. Accompagné d'une flotte offshore et d'une armée de plus de 100 000 soldats, Xerxès descendit la côte est de la Grèce vers Athènes, Sparte et d'autres cités-États grecques en 480 av. Le roi Léonidas de Sparte, avec 300 Spartiates et environ 7 000 autres alliés grecs, se dirigea vers le nord pour rencontrer l'armée de Xerxès. Ils ont choisi le col des Thermopyles pour prendre position car il s'agissait d'un passage étroit et facilement défendable délimité par une falaise et la mer. Pendant deux jours, les Grecs ont repoussé les Perses. À la fin du deuxième jour, cependant, ils ont été trahis par un local nommé Ephialtes, qui a parlé aux Perses d'un sentier flanquant au-dessus des montagnes.
Le roi Léonidas a ordonné à la plupart de l'armée grecque de battre en retraite. Pour les protéger, il est resté aux Thermopyles avec ses 300 Spartiates et environ 1 000 autres alliés grecs. L'armée perse a massacré la plupart des défenseurs, y compris Léonidas et tous les Spartiates. Les historiens estiment les pertes au combat à environ 20 000 Perses et 2 000 Grecs.