Many people ask about the difference between fondant, buttercream and fresh cream icing, here is a brief explanation:
Fondant: It is a kind of a sugar dough, which you can roll, it ensures a smooth finish and is generally used for wedding cakes. The downside is that fondant is heavy and does not have much taste, apart from the sweetness.
This is spreadable soft and slightly bitter to taste, and quite sweet, we prefer not to use this too often, as it can unbalance the taste experience of the consumer. However, this icing comes in useful for sticking things together and making decorations to put on cakes and cupcakes.
This is made from butter and sugar, this is also spreadable and it is sweet but still nice and soft, some people may find this a little overpowering and some people will like the buttery taste, but you cannot get such a smooth finish as fondant though, it is more palatable than fondant or Royal icing.
This is made of fresh cream and is soft and creamy, again, this cannot be made as smooth as fondant, however, the benefit of fresh cream icing is that it can be sweetened to taste (up to a certain extent), but the downside is that fresh cream only stays out at room temperature for a few hours and you cannot do intricate designs with this but it is a popular icing.
There are more types of icing, but the main ones have been mentioned here.