Les principaux rôles masculins du film ont été interprétés par :
* Danny Glover comme Albert Johnson
* Willard Pugh comme Monsieur
* Margaret Avery dans le rôle de Shug Avery (qui a été écrit à l'origine comme un homme, mais a changé pour le film)
Bien que Samuel L. Jackson soit un acteur très connu et prolifique, il n'a pas été impliqué dans "The Color Purple".