As Jacob Weisberg notes, The Star-Spangled Banner is a pretty poor national anthem. Matt Yglesias notes that it was written during, and memorializes, a fairly dishonorable war. I'll add that it's a song written about a flag, for pete's sake. A national anthem should be a big shout out to the neighborhood, a sort of national boast, and I'm sorry but the SSB just doesn't represent like it should represent: "We're free, we're bave, but how about that flag, eh? Eh? Ya like that flag?" I've got nothing against the flag, I like it a lot in fact, but I just think that our anthem, rather than commemorating the flag's staying power during a right boner of a war, should list things of which we're proud, the qualities we admire and to which we continue to aspire. A good American anthem would include references to the Bill of Rights, barbecue, and Blue Note records.
I've always been partial to the Philippine national anthem. The Ukrainian one is close to my heart for obvious reasons, and of course the French have themselves a beauty, excellent for singing in clubs in occupied North Africa.