That's a pretty open ended question. It really depends on how many domains you're going to host, traffic levels and how comfortable you are at managing servers. I use VPS hosting at Linode. A slice there costs $19.95 a month and you can host quite a few domains. You can increase the size of your VPS easily. They're rock solid, never really had any down time and they know what they're doing. The downside is you have to install, configure and manage everything. The upside is you have complete control.