Okay. Let’s Start From The Top.
Websites (such as yahoo answers) are run on servers (powerful computers). A small website can be run on a single server, but big sites require many servers to run them. Web Hosting is a service that provides you with a server (or a place on one) for a periodic cost so that you do not need to buy a server or a secure/reliable place to run it.
Some sites allow small web sites to run for free (Google App Engine for example) and only start if the site becomes really popular. Other sites will let you have free pages as long as they can run advertisements on them.
There are a large number of Web Hosts out there and they offer a large number of services. Some will even do the hosting for free if you buy some other product from them (like a domain name form GoDaddy). If you are new to the internet, you should probably start out with a blog (like blogger) or some other site that does not require web hosting to operate. How expensive can Web Hosting get?