I don't know of any free hosts that are worth using, but you can generally get inexpensive shared hosting, that doesn't require you to be a subdomain (yoursite.theirhost.com). You'd have to buy a domain name yourself and then it's really just a matter of picking some forum software (SMF, phpBB, MyBB are free ones that come to mind) and getting it set up. I've always preferred vBulletin, so I went ahead and spent the money to buy a license for it when I set up my own site. I have used SMF in the past, and it's fairly easy to set up and manage, as well.
As far as building traffic, that's the difficult part for any new site. If there's already 200 sites dedicated to the topic you're building a forum for, well... good luck. You're going to need lots of it. Members are generally looking for an established site that's full of knowledge and knowledgeable members, so they can both search, and get answers right away. They're also going to search for a site and the established forums with a lot of content are going to get the hits for the search engines. Your site may have the content they're looking for, but your search result will probably be 20 pages back, compared to the larger sites. Your best bet is to find something you have an interest in that others do, too, and that it's something there isn't already several sites to compete with. Tell anyone and everyone you know that's into that particular topic, so you can build some traffic, and make sure they stay active on the site. If the site has the content that people are looking for, they'll come to you. Make sure your site is full of keywords that search engines hit on, so they see results for your site, and you should be good.