I find that for low bandwidth websites that the lower end packages at http://www.vpsland.com/ezwin.html You get the control of Remote Desktop and loading pretty much anything you want starting at $18. The only issue I had with them was their support was a bit slow, and their connection seemed slower than most.
I then switched to MaximumASP with one of their VPS's. I absolutely love MaximumASP, their support was great and their servers are speedy. The only issue I have with them is I can't use MySQL, they block it for performance reasons. (use referral id: CRAB-6573)
I have since switched to Mosso (http://www.mosso.com). I love Mosso. I don't get the full access via Remote Desktop that I get with my MaximumASP account (which I stil have for my Windows Sharepoint Services sites, and other sites where Remote access is required.). But, Mosso is fast, has great support, and I can run ASP.NET, PHP, Ruby on Rails, and more all within the same domain, or I can have multiple domains (at no additional cost). The only issue I have is I found that their description of MSSQL being included was a bit misleading. I was shocked to find that MSSQL would cost $5 month per database per 500MB of data. Seems a bit steep. However, I use NHibernate in all my sites so it was no big deal to convert to MySQL so I went that route and haven't looked back. If you are interested in Mosso, give them my referral id and you get $100 off your second month. REF-CODEMONKEY
Another good host is Gate.com. I found that they were middle of the road as far as performance. But their support was great, and the price was right.
The one host I would avoid is 1&1.com. I made the stupid mistake of registering my domain with their "FREE" offer. I then found that I did not have the control I needed for file system rights. I cancelled the account within 30 days and got my money back. However, my domain ended up on the auction block. I still have not gotten the domain back. They keep paying for it. It was a very good domain (only 5 characters), but I have to chalk it up as a stupid mistake (which I knew better, I was just being cheap).