From reviews I have read, 300 seems to be one of those movies people either love or hate. I think both camps have a point.
On the positive side, 300 has some of the best battle sequences I have ever seen and some truly arresting visuals. I really enjoyed seeing the Spartans defeat the Immortals at the Hot Gates, and the stuff with Xerxes was bizarrely cool too. A couple of the scenes didn’t quite do it for me — the wolf young Leonidas kills is too obviously a CGI animation, and the captain’s son having his head chopped off was also too fake-looking — but the ones that did, damn they were sweet.
On the negative side, the story is pretty silly, and the script and character development are severely lacking. The plot points involving the oracle, the king’s wife trying to get the council’s support, and the traitorous hunchback were all pretty poor, and I found myself giggling in the movie theater at the silliness of a few scenes. This makes it an easy target for the barbs of the critics (for example here and here). 300 certainly lacks the serious movie-making chops of the likes of Braveheart and Gladiator, and I disagree with its earning a spot (so far, at least) in the IMDb top 250, where it sits at #157 as of this writing.
That all said, I liked 300 overall. You just have to take it for what it is: a chest-thumping fantasy version of history. It’s not trying to be smart (though it has a few rather weak appeals to emotion), and I refuse to see any sort of a political message here. Believe me, the people who put this together were too fixated on having the blood splatter in as artful a manner as possible to be conscious of any subtext relating to 21st century geopolitics. The Rotten Tomatoes consensus that it’s “a simple-minded but visually exciting experience” is right on target, and for a lot of us a lot of the time that’s what we’re looking for.