Pudding has both a broad meaning and a very specific mention, depending on which side of the Atlantic you're on.
In the UK, Pudding has a very broad meaning and just means "dessert." This broad usage appears to have started in the 20th century. If someone in the UK says they are going to serve pudding, you could have a fruit salad placed in front of you. If pressed to think of a more specific meaning, a Brit's mind would probably then go to a "steamed pudding", something boiled or simmered either in a mould or in a cloth. Many don't like saying "dessert", though, because it seems a bit lower-class to them. 
In North America, Pudding has a very specific meaning. It's a specific sweet, flavoured dessert, served after a meal in bowls and eaten with a spoon, that is based on milk thickened with a starch until it has a soft custard-like texture. It's usually cooked on top of the stove, though microwave and indeed no cook versions are now available in packets, as well as ready-made versions in tins. Common flavours are butterscotch, caramel, coconut, chocolate, lemon and vanilla.
Pudding in the North American sense must be brought to a boil to cause the starch to gelatinize except for instant mixes in which the starch is a "modified starch", that can gelatinize without heat. As the starch granules heat they swell, and some of their molecules go out into the liquid, making the liquid thick. When the mixture cools, the net of starch molecules traps the liquid inside it.
Pudding in the North American sense is sometimes compared to a custard, but technically a custard is a protein-gel, while a North American pudding is a starch-gel. That being said, though good custards are just egg, milk and sugar, cheating by adding a bit of starch isn't unknown, though it may be unconfessed Adding a bit of starch helps to stabilize the custard, and make it a bit less likely to curdle. So, you could think of a North American pudding (most homemade recipes for which involve egg, milk and sugar) as being a custard with starch, with the starch (often cornstarch) playing an even greater role as a thickener and stabilizer. Starch has the added benefit of reducing the number of eggs in a recipe, which would have been a consideration at one time. And perhaps comparing it to a custard is not too far off: the Portuguese term for custard is "pudim de ovos"; "egg pudding."
The closest sweet food in terms of thickness in the UK might be a Blancmange, but with a custardy texture, or Angel Delight, with a bit less air in it. Historically, the ancestor of the North American version of pudding would likely be "frumenty", a milk pudding served along with meat and fish dishes at banquets in the Middle Ages.
Beyond the UK meaning of dessert, or the North American meaning of a custard-like dessert, the meaning of Pudding gets even more complicated. Blood sausage is referred to as blood pudding. There's pease pudding, which is a thick mash of cooked dried peas, and there's Yorkshire pudding, which is more like a bread. And in America, there was hasty pudding, boiled cornmeal, which could be served as a savoury side dish or a dessert.
 For anyone reading this who just had a panic attack because s/he says "dessert", remember that the word appears to be good enough for French chefs, who are still considered to know a thing or two about food.
Literature & Lore
The Oxford English Dictionary says the word boudin / Pudding started off meaning the offal of an animal, boiled in a bag or cloth. The ingredients would be bound together by blood or a starch. Then, the word came to mean any preparation, sweet or savoury (remember, in the Middle Ages people didn't draw a black and white line between the two as we do now), boiled in a bag or cloth, as well as animal products cooked or chopped into a moosh and then stuffed into a casing like a sausage.
Now, the Oxford English Dictionary basically says, the Americans are more correct on this than the Brits, that Pudding is a starchy food, boiled or steamed, often with butter, eggs and milk in it.
PuddingsAlabaster; Angel Delight; Bavarian Cream; Bizcocho Borracho; Blancmange; Bread Puddings; Carrageen Mould; Cranachan; Eton Mess; Hasty Pudding; Junket; Macaroni Pudding; Nun's Tummies; Panocha; Posset; Poutine au Pain; Poutine Bouillie; Puddings; Rice Pudding; Steamed Puddings; Syllabub; Trifle; Zuppa Inglese
Please share this information with your friends. They may love it.