Generally, most small hosts are resellers. Bigger hosts would find it cheaper to run multiple dedicated servers, though they might in fact have them managed by the server provider.
There are generally numerous levels of service - Starting with the person who owns the physical location of the server. 'The Planet' are a good example, they own a massive server complex with thousands of servers running.
Many people rent servers or many servers from these big providers, and then manage them - to resell to others as managed servers.
Down again are your general hosts. They rent managed servers and distribute users among the accounts. These hosts often have reseller accounts available.
Further still you have the people who buy a reseller account, and set themselves up as a host. They may only rent a small share of a server to run their operation from.