Having a host is like renting a house, you buy space to use. In this case, you buy virtual space for your online store, blog or whatever.
Free hosting can happen in a way which the host company is having space on your website promoting their services. Furthermore, the “Free Host” can be within the domain name, instead of your name to finish with .com it could be “your name”.freehost.co
Different companies charge different
Offshore hosting, on the other hand, is hard to happen because of the language barrier and many other factors.
Let say you live in The Netherlands and your host is in Bulgaria. How are you going to understand the website rules and account information? Translator won’t save you every time, unfortunately.
Don’t forget, free hosting might have restrictions, restriction such as no backup, limited traffic, limited user support and even your website to disappear without your knowledge and so much more. Always do your research before attempting to do something, saves time, saves money.
Offshore is not free but provides better service, you can renew it before the deadline and get a discount or coupon. Most of the websites offer a big discount if you buy a host for a period of longer than 1 year. Its a good bargain!

Bonuses always happen for liable customers. If you use the host company for longer you might even become a partner with the platform.
In my opinion, the bottom line is what are your needs? Do you want to sell or educate? Provide service or collect surveys, we can go down the list.
Always do your researches and ask for free trials. The free trial will give you inside access of the platform. Then you can decide, is this for your or not, does this host fulfill your needs or you should switch to something else. 
Internet is growing and so are the companies, if you find a good company that is just starting they will probably give you a really good deal just to have you as a customer!