What is the Difference Between Similar But Different Things, Terms, and Objects

What is the Difference between User, Customer, Client and Consumer

Languages have a strange characteristic which is the collection of many such words that can be used interchangeably. Grammatically, it is not necessary that the collection of words having a similar meaning should be synonyms of each other.