I once stayed on hold well over an hour, possibly over two. I was reporting a power outage during a blizzard. ConEn thanked me for my patience...my area had not yet been reported, so had I hung up, we would have been even longer without power.
I would say it depends on who you're calling. If you're reporting an emergency situation, stay on the line. If you're holding for your cable company, 15 minutes is the max I would hold.
I've had to wait something like two hours when I've called the Social Security office. I didn't have much choice in the matter because I knew the hold times would always be bad and I needed to talk to them. With less sensitive/ urgent matters, I max out at about ten minutes. Sometimes five.
Pretty much what everyone else is saying here. I will hold for a government office because I have no choice. It can be a long wait. If it's a doctor's office, I will wait up to 10 minutes and call back.