La trama describe la historia del Rey Espartano Leónidas (Gerard Butler) y sus 300 guerreros espartanos que pelearon a muerte contra el "dios-rey" persa Jerjes I (Rodrigo Santoro) y su armada de más de 100 000 soldados.