Everything on the internet is on some server, somewhere. A server is like a giant shared hard drive.
Ever heard of "the cloud"? It's not actually a cloud. It's a server. A giant, boring piece of machinery with a mess of cables coming out of it. Like this one:
Now imagine that on an Amazonian warehouse scale and you'll have an idea of the server room that stores the internet:
There are servers for everything. When you keep something on a server, it's being "hosted".
What you see on your computer screen is just a visual rendering of the data that's actually on the server, located who-knows-where.
So, what's the difference between a domain and hosting?
Well, your domain is like the name of your pet. Let's say you have a dog, Missy (that's my dog's name). One day, Missy goes to heaven and you get another dog. Since your last Missy is gone, the name is available to give to your new dog because let's face it, having two dogs at the same time both named Missy would get awkward. Your new dog is now named Missy. I know that sounds a little weird, but do you get the analogy? The dog is your website. Websites can come and go but if you retain ownership of your domain (i.e. the name of your dog: Missy), you can give the same name to whichever website you own. The only catch is you can only have one dog in the whole world named Missy.
Hosting is where your website and domain are kept. On some server, somewhere. Your domain is the name of your website. When you type it in, your computer fetches your website from whatever portion of server it's stored on in the Amazonian sized warehouse that stores the internet and displays it on your screen.
So, your domain tells the computer to go to a certain spot on a server to retrieve your hosted website and bring it back to display on your computer screen.
In my business, I like to recommend you keep your website and your domain hosted seperately. That means you buy your domain from a different company than your website. I buy all my domains from Hover.com and all my websites from Squarespace.com. That's for security, you're not putting all your eggs in one basket. Though it's a lot less awkward to carry one basket than two.
More questions? Ask below!