You will hear everywhere that having your own domain name and hosting is the way to go. While I strongly encourage this, it doesn't mean that you cannot start making money with a free blog.
If you go to Wordpress.com, you will be allowed to create a free blog. The signup process is easy to follow. Once you're done, you need to select a nice theme for your blog. Nothing fancy – something simple and neat will do. Why wordpress? Because wordpress in itself is “SEO friendly”. It has got built-in internal linking among other technical benefits.
Next you need to put up some content on your website. I'd go with 5 articles, unique to begin with. After that, apply for an AdSense account at http://www.google.com/adsense . If your website is neat and your content provides value, you will get accepted.
As for the topic of your blog, you can do some basic research to find mid-paying/competitive keyword phrases, or just write about any topic you feel like. There are AdSense ads for almost any existing topic, except porn (which is against AdSense's Terms of Service anyway).
Now, I'd recommend only 3 types of ad-boxes because they are proven to work best. Place the 336 x 280 large rectangle just below your title and right above your actual content. If you had to use only 1 ad placement, use this one! Next place the 160 x 600 wide skyscraper as a sidebar. Lastly (and optionally), you can use the 468 x 60 banner below your article.
This alone won't make you money. You need to constantly update your site with new content (a mix of unique and duplicate content is fine). In the beginning, do 3 – 4 articles per week. After a month or so, you can cap it to 1 article weekly. You also need to build backlinks. You can do these on article directories, or by posting as a guest on high traffic blogs in your niche, and this will not only make your website more trustworthy in the eyes of search engines, but you'll also get traffic to your side with these articles.
There are other sneaky ways to build backlinks by creating profiles on forums and leaving a link to your site and all, but I'd urge you to stick with the right way to do things so you never get penalized by Google. You can lose your AdSense account on the ground of “spamming” or “trying to artificially increase your rank”, so don't mess with Google.
Before you know it, if you did really build a nice website with valuable content which provides value to visitors, you will be seeing money roll into your AdSense account.