Official reason: Your brain is not developed enough at 21 to drink responsibly, and it was a response to an increase in accidents. That is also only publicly, in many states, there is no law about private consumption or in the presence of parents.
Reality: The drinking culture in the United States, but I think it's changing, inherently promotes binge drinking. This is probably the result that American culture, which still has very prohibitionist attitude, still sees alcoholic beverages as a drug instead of just a drink. The average bars that I've been to into the U.S. have a completely different feel than bars and pubs I've been to in Europe. I know NO ONE that waited until 21 years old to have their first drink. I think the stats say that most U.S. citizens have their drink around 12 or 13, and in my experience this is definitely true.