With great power comes great responsibility - What if this specificity can be taken positively? It depends on how organised is your CSS. I think using ID selectors can be very useful at many places.
Great comment, I think the lesson to be learned here is you can't be reckless with ID's because it may come back to bite you later. Like everything though, user discretion is advised.
For me it very much depends on context, especially if you use javascript (and things like jQuery) a lot to manipulate the DOM - there are good use cases to prefer ID selectors over other types of selectors.
Indeed. Mostly when you use CSS that comes along with a framework. It's very easy to override something using an ID. But if it's already full of ID's it can become a little harder.