I can do some free hosting if you want it, all you need to do is get a domain, otherwise it would be a subdomain, be perfect for what your doing.
Learning wise, use notepad and your day to day browser, it's all too easy to build sites now days and know no code what so ever and you just learn to drag and drop in the end.
Using notepad and starting from the very start with HTML, build a simple site and go from there. Maybe include some CSS at the end of it to make it look nice, before attempting something that does it for you. That way you get an understanding of what the code is doing.
Domains is what links an ip address to something a bit rememberable like
http://www.talk.electricianforum.co.uk
".co.uk" is a top level domaiin
"electricianforum" is the domain
"www." and "talk." are both subdomains.
Hosting Servers are the sexy machines that provide all the information to the internet.
Hosting providers come in all shapes and sizes and vary with price, different bandwidth limits and storage space, limits in amount of accounts you can have or even databases. Its a good idea to shop around for a good price and look at reviews on the providers performace and support.
domains are generally very similar in price and hosting varies quite a bit. both can be found from the same provider or seperate providers, it tend not to matter where you get either from.
Im sorry if you already know this, just ask more questions if it didnt really answer yours.