Directed by Zack Snyder and based on the graphic novel by Frank Miller, 300 recounts the battle of Thermopylae that took place in 480 BC between the Greeks and the Persians.
Under the rule of King Xerxes (played by Rodrigo Santoro), described as the Persian God-king, several Hellenic city states have already been conquered and the ambitious king has now set his sights on Sparta, one of the last Greek states yet to bend to Persian authority. Refusing to sacrifice his freedom or the freedom of his people, King Leonidas of Sparta (played by Gerard Butler), along with 300 of his best soldiers, decide to fight. Even though they are vastly outnumbered (the Persian army numbering about 100,000), the Greeks manage to successfully hold back the enemy in what has become one of the most famous last stands in history, until they are betrayed by Ephialtes (played by Andrew Tiernan) - a horribly disfigured Spartan who had requested to join the army against the Persians but was refused by Leonidas because of his condition.