Web hosting is a service which is used to store the contents of your website on the internet. Hosting is a special computer, which has been configured to be used publicly. These computers are called servers. When a user types your website name in a browser, that browser makes a connection with the server and display the contents of the website to the user.
Assume, you have a word file on your computer. Consider, that file is your website. You can open your file on your computer. What if you want to open the same file saved on your computer from another computer. Network engineers will do some technical magic and make that computer, publicly accessible. Now you can open the file saved on that public computer from any computer.
Same happens on a website. Your contents of the website will be stored as HTML files. These HTML files will be stored on a publicly accessible computer. Technically these computers are called hosting server. For your understanding, a server is a kind of hard disk to store your website files and other data.
Actually, we can turn our personal computer into a public server and we can host our HTML files into that. But we will have to buy storage devices, power units, and other networking kits. You have to hire a few network engineers. It will cost you some big money and definitely not affordable. You don't have to do this.
There are hosting providers to do this. They will manage huge servers in their data centers. We can buy a small hosting space from them. We have to pay a small amount yearly or monthly basis for that server space. So this is what called Hosting.