Technically, it's based on a Frank Miller comic of the self same title (300)... the imagery from the comic is mimiced in the film. In fact, some of the lines from the movie are exactly from the comic book. For example:
Our arrows will blot out the sun.
Then we will fight in the shade!
While the movie is based off of the Battle of Thermopylae, there are some grevious historical differences in the film and comic. Firstly, did you know that there were actually approximately 3000 soldiers fighting with the Spartans? Some of them actually stayed for the final battle... so it wasn't just Spartans dying at the end. Also, Leonidas historically died much earlier on in the battle. In fact, there was a whole battle just over the guy's corpse. Xerxes and his men wanted to desecrate the body.
These are just a few differences.
I also loved the movie... the visual effects were great. The movie was very well done and really did the comic and the story of the 300 Spartans justice. I liked the way the blood was done, where it was like dust in the wind and "evaporated". That was nifty.
CuruEdit: Corrected the spelling. Makes it easier to search for, when it's spelled right. 