A lot of people will recommend big companies like 1&1 or go daddy, but I have used both, and I don't like the big feel. Their customer service sucks! They even charged me without my permission! And their customer service people are not knowledgeable AT ALL!
I have my site hosted with a small company. My friends actually...
www.paradehosting.com
They are very good, uptime is good, and support is good. I work from them too.