People blame Apple, demanding a cure and threatening to switch to Android. People have suggested such 'solutions' as factory restores, logging out if iCloud etc. It seems Genius bar staff at Apple are often not able to solve the problem, and some have not believed the problem is as serious as it is.
I had the problem for the first time after upgrading my iOS devices to 6.0.1. My battery was draining from 100% to zero, sometimes in as few as four hours. It was also running 'hot'. Before my iPhone 5 had lasted at least two days on standby.
I experimented carefully with various solutions one at a time. In my case, it turned out that Skype was the culprit. Even though I haven't used Skype on my iPhone for a long time, its background process was still active, and reactivated after every reset. The solution was to 'kill' Skype fully by double-clicking the home button to bring up the 'recent apps' list, finding the Skype process, holding down the home button until the the red 'minus sign' appears, then clicking on it. After doing this, my iPhone's battery is back to normal.
Other people have reported a similar problem with the Facebook background processes, or the iCloud background processes. In the latter case it seems that logging out and logging in is the cure.
Why are these background processes behaving badly for some people and not others? It could be malformed data in the particular person's account, or any number of other possible causes. Clearly these issues are sporadic and only affect a minority of iOS users.
Apple, I think, is not to blame here, but could be part of the solution. Those with a conspiracy theory mindset might guess that Microsoft has seeded bugs into Skype to drive people from iOS to Windows 8 Mobile! Of course, I don't believe that. My theory is simply that a latent bug in Skype was surfaced by upgrading iOS to 6.0.1 for me. Other bugs for other people might have been surfaced by other upgrades.
Apple should, however, put software in iOS to detect processes that are using too much power during supposed sleep times, and warn the user about them (with instructions about how to kill the process), or force those processes to die or use far fewer resources.
The AppSwitch tool is a very good tool, by the way, to see which processes are running in multitasked mode.
Apple's stock is in a downtrend, and I am convinced that the battery woes are driving lots of people away from iOS unnecessarily. There are other issues for Apple's woes (ridiculous patent attacks against them for example), but this is one they can deal with fairly easily.