Domain
An Address like your home address

Hosting
A place to stay or to keep humans.

Shared Hosting

Few hundred people sharing or living in an apartment.

dedicated server

1 person staying in the whole apartment.

In conclusion

domain is yr website url
hosting is to store your webfiles, database or emails.
Shared hosting is hundreds of people sharing a server
Dedicated server, one person using the whole server.