I am completely blown away by Amazon Web Services. S3 is wonderful in its simplicity and EC2 is revolutionary.
S3 stands for Simple Storage Service, and it lives up to its name. Put stuff up there and take it back down again. You can also have it generate auto-expiring URLs that others can access. Pay based on upload amount, download amount and storage amount.
EC2 stands for Elastic Compute Cloud. It is just a pay-by-the-hour server service. You provide the Linux image you want to run (or use one of their pre-built ones) and tell them to fire it up. The service assigns an IP address to the newly created machine and the rest is up to you. Pricing is such that it could destroy the dedicated server hosting business with a couple of small changes (basically a load balancer with a static IP would do it). It's biggest strength now is on-demand number crunching. Great for development/demo servers too.