Is affiliate marketing free?
Yes and no. Most affiliate programs and networks are free to join.
However, you will often need a website to get approved to promote the programs. If you do not already have a website you would need to purchase web hosting. Web hosting for beginners costs about $5/mo.
Once you have a website you can generate search engine traffic to it for free that is suitable to your content and affiliate offers.
If you would like to get traffic faster than search engines deliver it to you (which can take a while) you would need to purchase ad spots, PPC ads, or sponsored blog post on other websites.
You could also promote your website for free writing guest posts on other blogs with links back to your websites.
See all questions and answers in my affiliate marketing FAQ