Thought I'd give this one a shot. HostingNewbie, I think it greatly depends on the company and what incentives they offer. For instance, it's perfectly fine to charge by the month (obviously) but maybe if a company charges by the year (we do this), that company is able to pass on discounts that can make the package seem attactive in its entirety rather than piecemeal. If that make sense?
Jaiem is perfectly correct that most companies offer incentives for clients to purchase web hosting on a yearly basis. It's up to the companies to decide what those incentives are, but I've come across "specials" that involve getting months for free, getting a domain name for free, getting an added discount on months (for instance, if you purchase it for one month, it's "x" amount - and if you purchase it for six months in advance it's "x" amount minus 10% - and if you purchase 12 months in advance it's "x" amount minus 20%, etc.)
In answer to your question, I think things
are starting to lean towards the yearly payments, but I don't think monthly payments will ever truly die or anything. This is a service industry and what the customers want, they get.

So in order to keep customers happy, monthly payments will always be an option
somewhere.
All the best,
--Jodi