For those who think being critical of America means being anti-American, listen to Roy Zimmerman singing about America. He illustrates the amazing demographic diversity in America, the absurd contradictions, how it all mixes together (Norman Rockwell Thanksgiving paintings in Indian casinos), and how amazing a social experiment this country has been. His description of the founding of this country is profound and amusing, reverant ("America is a conspiracy of genius in sweatstained wastecoats, and powdered wigs"), and critical. It is a patriotic lovefest of the highest order.
Now listen to Thanks for the Support, an angry anti-war song, exactly the sort of thing so often labelled anti-American, and with a shot for the Democrats as well as the Republicans. Yet we already know this guy loves America to his bones. Reality simply doesn't, in this case, support the American-critics-hate-America theory. I contend this case is more the norm than the caricature that people like Bill O'Reilly present as the norm. People aren't critical of America because they hate America. They are critical of it because they love it.