Setting up your own server is a pain.  Making sure it runs all the time is worse.  What if there is a power cut?  What if hackers attack?  There are many companies which will take all that on for you.  They should be better at it than you as well because it is their full time job.

I recommend that you do not arrange hosting yet.  Use XAMPP while you learn and only when you have a real site ready to go start looking for hosting.  However, if you want to learn about hosting start researching now.

Which Web Hosting company?

There is no one best hosting company so you will need to search for one yourself.  Also don't completely believe any recommendations unless they are recent and you know the person recommending that company.

This site is hosted on one.com's servers because they were cheap for the first year and looked good and you might want to start with a similar company.  After a year you might want to try another company and see which is best.  I have not bothered as one.com have been generally reliable and my demands are not great.

If you are running a more demanding site you might want to pay more for lots of space, unlimited bandwidth and included email server.  You can also get guarantees of uptime (the time the site will be available to users).  If you are running a business then five minutes downtime could ruin you.

If you are just playing you might want to look for free hosting because all you really need is somewhere to put your pages.  You should look for a LAMP-based server though with at least one MySQL (or MariaDB) database ready for the next tutorial.

The process is normally explained on the hosting company's site and maybe you should not use them if it is not.  Simply it is:

  1. pick a hosting company which offers what you want (most offer more than enough space but some limit the traffic you can have to the site)
  2. check with them for available domain names (e.g. yourwebskills.com) and pick one (you pay every year or two years to in effect rent the name)
  3. pick the service level you want for hosting and start paying the monthly or annual fee
  4. upload your pages to the server using an FTP program and the settings provided by the hosting company (or as explained next)