Each public cloud (Azure, AWS, Rackspace etc.) has its strengths and weaknesses. Some public cloud offerings tend to have more "vendor lock in" than others. Which public cloud is very good for migrating to and/or from?
I've been a Linode customer for 15 years now... I have yet to see a reason to change, at least for my own use cases.
Edit for clarification - why do I think you should look at linode?
You have total control over just about every aspect of each of your virtual machines. You pick the distribution, you install and configure the software and services. If you have multiple machines on your account, you can get a private network between them all in the data center. The basic $10/mo plan beats the cheapest micro instance that AWS provides (at least when I checked 2 years ago). Partial use billing - need a machine for a few hours to make a backup before a big upgrade? No problem, pennies per hour, or for longer use prorated for the month. Some extras like more IP addresses are cheap ($1/mo). The few times I've contacted support (paying via PO, other billing related special requests) they have responded quickly and in a positive manner.
Edit 18 months later...
Linode is still king as far as I'm concerned. You can now get micro instances for $5 per month, and they've introduced mass block storage - not quite as fast but at their pricing adding storage is now silly cheap.
I know this seems like a shill, but I'm not associated with them in any way other than as a very satisfied customer