The plot revolves around King Leonidas (Gerard Butler), who leads 300 Spartans into battle against the Persian god-King Xerxes (Rodrigo Santoro) and his invading army of more than 300,000 soldiers. As the battle rages, Queen Gorgo (Lena Headey) attempts to rally support in Sparta for her husband. The story is framed by a voice-over narrative by the Spartan soldier Dilios (David Wenham). Through this narrative technique, various fantastical creatures are introduced, placing 300 within the genre of historical fantasy. The events are revealed to be a story told by Dilios, the only one of the 300 Spartans to survive the battle.