Spartaneren kong Leonidas (Gerard Butler) og 300 spartanere kjempet til siste mann mot persiske kong Xerxes (Rodrigo Santoro) og hans hær av over en million soldater mens dronning Gorgo (Lena Headey) i Sparta forsøkte å mane til støtte for hennes ektemann. Fortellingen er fortalt av en stemme ved den spartanske soldaten Dilios (David Wenham). Gjennom denne fortellerteknikken blir alle fantastiske vesener introdusert, og plasserer filmen innenfor sjangeren historisk fantasilitteratur.