A website needs somewhere to live on the internet.
It needs to be on a computer that is switched on and connected to the internet at all times. That’s called a ‘host server’ and if it’s ever powered down, the internet loses access to your website.
This is where hosting comes in. Your web developer (or whoever arranges your website’s hosting) pays for a server and its maintenance. The server ‘hosts’ your website.
A server has X amount of space, processing power and bandwidth. Each website takes up X amount of these resources on the server. Your hosting bill is to pay for these resources on the host server and maintenance costs that come with it. Paying your hosting invoice ensures that your site keeps its place on the server.