To address your point about the amount of CSS, the entire style library is separated into .less stylesheets, so it's very easy to take only the parts you need and roll your own main stylesheet. They even allow you to customize here http://twitter.github.com/bootstrap/customize.html
You can be the judge as to whether the code is good or bad, but it's as lightweight as you choose to make it.
It's popular because it's easy to work with, provides a lot of functionality, it looks pretty good out of the box, gets you started quickly with a solid framework, and is free. But no generic solution is every going to be optimized for ALL use cases, so if you compare a generic framework like Bootstrap to a more specialized framework for a specific use case, the generic framework will almost always look bloated. That doesn't mean it's not useful as a starting point for many people for lots of reasons.
Those that are looking for Bootstrap-only templates may be pigeon-holing themselves, but on the other hand, the framework is popular enough that if they'll be able to find plenty of templates they can easily customize without having to relearn a whole new set of classes every time. For those that are flipping websites quickly, eliminating that overhead increases efficiency.
You can argue whether Bootstrap is good or bad, but the reason it's popular is that it's useful, plain and simple