Web Hosting is a service which makes a site available from the Internet. It provides a physical place for your site (server) and Internet connection, also it may provide DNS services. Hosting companies differs from those who own huge datacenters to the small ones who rent couple of servers somewhere.
How to choose a hosting? You should pay attention to several important things: features, price, support and uptime.
Features include disk space, database usage, bandwidth, monthly traffic etc. Requirements totally depend on your site. It is clear that personal page has different requirements than a well-known online market.
Price. You may even find completely free hosting, just look if the service satisfies your needs.
Support. How long does it take to solve a problem with your site? What is an avarage response time? Your site is down for a week, and noone cares - is that possible?
Uptime - what is actual running time of the site.
Reliable hosting is very important for business. Using website monitoring services may help to evaluate the hosting service and check how often do the problems really appear.