Well, it depends on how much you want to spend.
1. The cheapest option I know is:
http://www.hosttell.com/one/
$3.75/month but they don't offer that much disk space and options.
2. Godaddy has a couple of nice plans:
http://www.hosttell.com/godaddy/
3. For $5.78/month I recommend Dreamhost http://www.dreamhost.com/hosting.html
Their standard price is $119.40/year ($9.95/month if you pay yearly) but they currently have a promotion. You can use the promo code PLUS at sign up page and get the $50 discount + 2 Free domain names. This way you get them for $69.40/year ($5.78/month). You can use their huge Disk Space and host unlimited number of sites on a single plan.
Disk space: 500 GB
Bandwidth: 5000 GB
2 Free domain names
Price: $5.78/month ($69.40/year)
4. If you're willing to pay $20+/monthly for hosting I recommend:
http://www.mediatemple.com
http://www.slicehost.com