Da den anden persiske invasion af Grækenland begyndte i 481 f.Kr., blev Leonidas valgt til at lede de kombinerede græske styrker, både på grund af spartanernes ry som et overlegent militær kongerige og på grund af sin egen dygtighed som general. Det siges, at kongen besøgte Oraklet i Delphi, som blev konsulteret om vigtige statsspørgsmål i hele det antikke Grækenland, og Oraklet leverede et stort vers, der i det væsentlige fortalte ham, at han måtte aflægge sit liv for at forhindre, at hans rige blev ødelagt af Persien.
I august 480 f.Kr. marcherede Leonidas ud for at møde hæren til den persiske konge Xerxes ved Thermopylae, en smal kystpassage, der lå på persernes rute inde i landet. Han havde kun 300 elite-spartanske soldater og 900 slaver med, som han tilføjede, da han marcherede langrend gennem andre bystater og ender med en samlet hær på mellem 4.000 og 7.000 mand. Der er fremsat forskellige forklaringer på, hvorfor styrken var så lille; Herodot teoretiserede, at spartanerne marcherede lige ud, så de blev set for at udvise ingen frygt med forventningen om, at en større hær ville blive mønstret og ville følge kort efter, men moderne historikere mener, at interne stridigheder eller endda det faktum, at de olympiske lege blev afholdt på det tidspunkt kunne have været skylden.
Den persiske hær, de stod over for, var stort i antal. Herodotus ‘skøn over to millioner mænd er siden blevet afskåret, men tallet var mindst 70.000 og muligvis op til 300.000. En fire-dages dødvande fulgte, derefter perserne angreb på den femte dag. I to dage holdt grækerne perserne tilbage og dræbte cirka 10.000 af deres mænd, herunder to af kong Xerxes ‘brødre. På den syvende dag kontaktede en forræder ved navn Ephialtes den persiske general Hydarnes og viste ham en skjult vej, som han kunne tage for at komme bag grækerne. Da han vidste, at han nu var overflankeret, sendte Leonidas alle græske tropper væk og valgte at forblive i passet med sine 300 spartanere og slaverne, 400 Thebans og 700 Thespians.
Herodot skrev, at Leonidas sendte mændene væk til sikre, at de ville leve for at kæmpe en anden dag og være nyttige i en fremtidig kamp mod perserne, og spartanerne blev både for at beskytte grækernes flugt og fordi de aldrig kunne opgive deres position på slagmarken. Thespianerne skulle være sendt væk med de andre grækere, men blev efterladt af deres egen vilje.
Xerxes tilbød angiveligt at skåne spartanernes liv, hvis de opgav deres våben, som Leonidas svarede ” ΜΟΛΩΝ ΛΑΒΕ ”(kom og tag dem). Mændene kæmpede derefter et bittert sidste standpunkt mod perserne, og alle blev dræbt undtagen de 400 Thebans, der overgav sig til perserne uden kamp. Efter Leonidas blev dræbt, kæmpede spartanerne for at hente hans krop og forhindre perserne i at vanhellige den. Leonidas var cirka 60 år gammel på tidspunktet for hans død, og han blev efterfulgt af sin søn, Pleistarchus.