It was the first time veteran filmmaker Loach won the main prize after seven earlier entries in the main competition at the world's most prestigious film festival.
"The Wind That Shakes the Barley" stars Cillian Murphy as an Irish medical student who takes up arms against a reign of terror by the Black and Tans, British troops sent in to quell calls for independence.
Loach, who previously won the third-place prize at Cannes with 1990's "Hidden Agenda" and 1993's "Raining Stones," said he hoped the film would be a small step encouraging the British to "confront their imperial history. And maybe, if we tell the truth about the past, maybe we tell the truth about the present."
Prizes for best actor and actress went to ensemble casts. Penelope Cruz and her five key cast mates in Pedro Almodovar's "Volver," including Carmen Maura, Yohana Cobo and Lola Duenas, shared the actress prize. The film, a comic drama about women making do without men, also won the screenplay honor for director Almodovar.
"It's such an honor to be able to share this award with all these amazing women," Cruz said. "I think this award really belongs to Pedro, the master. ... Thank you so much, Pedro, for what you do for women."
The men of Algerian director Rachid Bouchareb's World War II saga "Days of Glory," about North African Muslims who volunteered in the fight to free France from the Nazis, received the best-actor honor. The cast included French stars Jamel Debbouze, Samy Naceri and Sami Bouajila.
In accepting the award, the "Days of Glory" cast joined in on an anthem sung by French colonial soldiers during World War II.
Mexican filmmaker Alejandro Gonzalez Inarritu won the directing prize for "Babel," which featured Brad Pitt and Cate Blanchett in a multicultural drama about loosely linked families around the globe.
Inarritu said more than 1,000 people contributed to the production of the film and that "I'm receiving this award on behalf of all of them."