Quando la seconda invasione persiana della Grecia iniziò nel 481 a.C., Leonida fu scelto per guidare le forze greche combinate, sia per la reputazione degli Spartani come militare superiore regno, e grazie alla sua abilità come generale. Si dice che il re abbia visitato l’Oracolo di Delfi, che è stato consultato su importanti questioni di stato in tutta l’antica Grecia, e l’Oracolo ha consegnato un grande verso che essenzialmente gli diceva che doveva dare la vita per evitare che il suo regno fosse devastato dalla Persia.
Nell’agosto del 480 aC, Leonida marciò per incontrare l’esercito del re persiano Serse alle Termopili, uno stretto passaggio costiero che si trovava sulla rotta dei Persiani nell’entroterra. Aveva con sé solo 300 soldati spartani d’élite e 900 schiavi, a cui si aggiunse mentre marciava attraverso il paese attraverso altre città-stato, finendo con un esercito totale compreso tra 4.000 e 7.000 uomini. Sono state avanzate varie spiegazioni sul motivo per cui la forza era così piccola; Erodoto teorizzò che gli Spartani marciavano dritti in modo che non mostrassero paura, con l’aspettativa che un esercito più grande sarebbe stato radunato e sarebbe seguito subito dopo, ma gli storici moderni credono che i conflitti interni o addirittura il fatto che i Giochi Olimpici si tenessero a quel tempo avrebbe potuto essere la colpa.
L’esercito persiano che hanno affrontato era enorme in numero. La stima di Erodoto di due milioni di uomini è stata smentita da allora, ma la cifra era di almeno 70.000 e forse fino a 300.000. Seguì uno stallo di quattro giorni, poi i persiani attaccarono il quinto giorno. Per due giorni, i greci trattennero i persiani, uccidendo circa 10.000 dei loro uomini, inclusi due fratelli del re Serse. Il settimo giorno, un traditore di nome Ephialtes contattò il generale persiano Hydarnes e gli mostrò un sentiero nascosto che poteva prendere per mettersi alle spalle dei greci. Sapendo di essere ora aggirato, Leonida mandò via tutte le truppe greche, scegliendo di rimanere nel passo con i suoi 300 spartani e gli schiavi, 400 tebani e 700 tespiani.
Erodoto registrò che Leonida mandò via gli uomini a assicurarsi che sarebbero sopravvissuti per combattere un altro giorno e sarebbero stati utili in una futura battaglia contro i Persiani, e gli Spartani rimasero sia per proteggere la fuga dei Greci sia perché non avrebbero mai potuto abbandonare la loro posizione sul campo di battaglia. I Thespians avrebbero dovuto essere mandati via con gli altri greci, ma rimasero dietro di loro spontanea volontà.
Serse avrebbe offerto di risparmiare la vita degli Spartani se avessero rinunciato alle armi, cosa che Leonida ha risposto ” ΜΟΛΩΝ ΛΑΒΕ “(vieni a prenderli). Gli uomini hanno quindi combattuto un’ultima dura resistenza contro i persiani, e tutti sono stati uccisi tranne i 400 tebani, che si sono arresi ai persiani senza combattere. Dopo che Leonida è stato ucciso, gli spartani hanno combattuto per recuperare il suo corpo e impedire ai persiani di dissacrarlo. Leonida aveva circa 60 anni al momento della sua morte, e gli successe suo figlio, Pleistarco.