Now lets say there is an office building across the street at 124 Main
St. You come into the lobby of that building and you discover that there
are 10's, 100's or even 1000's of offices, all for different businesses.
Each one has an address associated with it like Suite 412 (might indicate
its office #12 on the 4th floor). So, now the address would be 124 Main
St. Suite 412. The suite designation indicates a particular location at
124 Main St. A subdomain is the same type of addressing (for example -
suite412.124mainst.com or www.124mainst/suite412).
A subdomain doesn't (or shouldn't) cost anything to set-up. On the other
hand, a private domain (like actual real estate) has maintenance costs.
Primarily, registration fees.
With a subdomain it is usually much easier to pick the name you want
for your address. With a private domain you may have to slog through many
variations of your name to come up with a domain that is available.
Free hosting plans are subdomain accounts. With the great price of "free"
usually comes pop-ups, banners, etc. advertising things that you may or
may not want on your site or associated with your business or the ads
may compete directly against your business.
Subdomain accounts, while less expensive, can often be established with
the same features (multiple e-mail accounts, mail forwarding, web stats,
FTP, SSI, etc.) as private domain hosting.