You can use a free wordpress site if you are on a budget and it's a small site. If you're trying to brand the site and create an authority site, buying a domain is better.
For ads, you may need a plugin, depending on what type of ads you want to add. If you're just putting in affiliate links...