* English spelling is inconsistent and often based on etymology. The word "color" comes from the Latin word "color," which is spelled with a "u." When the word entered English, the "u" was kept.
* British English spelling is more conservative. British English retains the "u" in "colour," reflecting its Latin origin.
* American English simplifies spelling. American English often simplifies spellings, dropping letters or changing them to be more phonetic. The "u" in "color" is one example of this simplification.
So, the "u" in "color" is a bit of a historical relic, retained for reasons of etymology and not necessarily for its pronunciation.