There are plenty of reasons why you would want to choose free web hosting over paid hosting. If you are looking to set up a personal website that isn't going to be very big, or you want a platform on which to experiment or test software, free web hosting makes an affordable web hosting plan.
There was a time when good, free web hosting was readily available on the Internet, as well as full-featured. Unfortunately, as time went on, various factors led to much of the free web hosting simply not being viable anymore. This is all too evident these days, as a quick Google search will show you. Many free web hosts turned commercial, and most of the ones who didn't forced their clients to adopt annoying, very prohibitive advertising on their websites. These included pop-ups, banner ads and even JavaScript messages.
Needless to say, a professional website, particularly a commercial one, simply cannot be hosted on free web hosting. It's not professional, and any forced advertising will give customers a very bad impression of a company that does this. Free web hosting providers also usually impose strict (and very low) limits on things like disk space and bandwidth, and they sometimes even have rules on the type of files that can be stored. Advanced features like databases and scripting support are normally not included in free web hosting packages, and so anything but the simplest of sites need more than a free affordable web hosting plan.
The one, obvious benefit is, of course, that free web hosting is free. If you really don't mind about the lack of features or web space (for example, you just need to back things up), then a free web hosting account can work for you.