On the surface it's bizarre that Cinco de Mayo is so widely known among Americans. Granted, most of them confuse it with Mexican independence day which is September 16, but still it's odd that this holiday is so popular among Americans when it's pretty much just a regional celebration of one state in Mexico. Cinco de Mayo commemorates the Mexican victory against the French forces of the Habsburg Archduke Maximilian at the Battle of Puebla in 1862. It was undoubtedly a great achievement - the Mexicans were outnumbered two to one against a much better equipped French army. It wasn't a major strategic victory in the overall war but it provided a boost in Mexican morale and patriotism at a time when they needed it the most. Americans celebrating Cinco de Mayo seems as incongruous as Mexicans celebrating the Battle of New Orleans in the War of 1812.
So why is it such a big deal in the US? It's not like the Mexicans who are here need to "celebrate their culture" since they've turned huge swaths of the American west into pockets of Mexico. My guess is Americans were looking for an excuse to get hammered between St. Patrick's Day and Independence Day.