The Cinco de Mayo (fifth of May) is the day a Mexican army defeated a French force that had been sent to Mexico as reinforcements to a French army already there.
Emperor Napoleon II of France, in the early 1860s, had been invited to take over Mexico by the upper large land owning social class in Mexico known as the Creole class and they were pure blooded descendents of those that came from Spain to rule after Spanish conquest of Mexico from Indians. Mexican government led by Juarez (a metizo, half Indian/half Spanish) wanted to redistribute the land which led to Creoles going to Napoleon II for help.
Napoleon II will put an Austrian prince named Maximillian on throne as Emperor of Mexico and French troops used to keep him in power. Juarez resisted the French supported Mexican government.
French troops, sent as reinforcements, had been stricken by a Cholera outbreak on its voyage across Atlantic. Many died on ships and survivors of French troops that got to Mexico were in pretty bad shape, many too sick to fight. When French troops tried to march inland to join with other French army, they found their route blocked by Juarez troops. Battle that was fought won by troops of Juarez.
So, the Cico de Mayo celebrates the only battle ever won by Mexicans over a foreign army. With end of our Civil War in 1865, U.S government made it clear to Napoleon II that we were now interested in dealing with French violation of the Monroe Doctrine. He withdrew the French army from Mexico and Juarez able to regain control of government and execute Maxmillian
Don't know for sure if this is true, but I understand the Mexicans in U.S celebrate this day more than the Mexicans in Mexico.