To clear up the terminology confusion:
Basically, there's co-location, managed hosting, and virtual private server. VPS uses virtiualization to some degree to make one server appear to be many, meaning the host company only has to maintain one set of hardware for many customers, while still allowing customers to have a "dedicated server." Managed hosting is a real dedicated server, but the people at the hosting company manage most of it for you. Co-location means you just buy a server and pay to have it stay in a data center connected to power, the Internet, and anything else available, but you have to take care of the rest.