I've had to change web hosts a number of times. In fact, I spent most of this week changing from one host to another. Believe me, it is a major pain, although I have made sure that my site is always ready to move if necessary.
One thing I've become is very aware of the difference between a good host and a bad host. To put it simply (and obviously) a good host makes it easy for you to create and maintain your web site. A bad host gets in the way and makes you angry, unhappy and gives you an ulcer.
The key point to remember when evaluating hosts is the most important quality is responsiveness - of your site and support people. Your site should be up virtually all of the time (unfortunately computer crashes do happen but they should be rare and far between) and it must be fast. In addition, all good hosts react in a timely manner to support issues and questions. You can tell when a host is going bad from the failure of these key areas - unresponsive technical support, slow servers or constant downtime.
This article is intended as a kind of checklist - what is essential, essential if you need it, optional and not important at all? Look it over, then when you go to find a good host pull out the article and make sure it measures up.
More...