This is pretty much correct, OP. While a free web host isn't really the best idea, you can use it for a startup. Once you get a decent amount of users, or need to upgrade, I'd buy a VPS.
VPSdime is good, and I use Beastnode for my stuff. Even though Beastnode is mainly a minecraft thing, they have pretty good VPS' at decent prices. Their support is pretty good, and they're pretty much good with anything so long as you don't get reported.
If you need a free domain, freedns is pretty good. If you need to buy an actual domain, don't use 1&1, they're god awful. Namecheap is pretty good though, it's what I've used for my site.