I find the key factors to dissatisfaction of cable companies are (in no particular order):
- Lack of competition - Without an option for dissatisfied customers to change to without at least a severe reduction in services (or at all), there is no push to make customers happy. Add in the fact that many smaller companies aren't recognized as service providers, so many web services that allow you to watch shows aren't available ( USA, Disney Junior, etc.) since you don't have a cable company they recognize.
-High prices - As a consumer, you end up paying a lot, and most of the content that is delivered isn't really wanted. Most of the time I find myself wanting about 5 channels from basic cable, maybe 5 from extended cable of various bundles offered, and one or two premium channels, but to get that, I end up having to get hundreds of channels at extreme prices considering what I'm already paying.
-Bundles - I don't like paying for services I'm not going to use. I don't like paying for channels I'm never going to watch (and I don't like supporting channels that I don't care about). I don't like my prices going up after my special introductory offer is over (or yearly).
-Outsourcing support - Like most companies, when you call for support you mostly end up going to a call center and speaking to someone that is following a script and actually has little to no technical knowledge on what you're actually trying to ask about. The script normally starts off like you're an idiot (Yes, my TV is plugged in, and it is on the correct input), and ends up with them putting in a call to have a technician come out after you've wasted 30 minutes of your life. Then you get a 4 hours window where the technician may show up if they aren't late, while you get to wait and do nothing productive during that time.
It's no wonder people are dissatisfied with cable companies. But it's not like you've got a choice, since at least you'll end up paying them for internet most of the time so you can stream your shows.