I've used EntLib for many years (since they were indiviual App Blocks). I've found that at times it can be pretty heavy as far as the size of the components, especially if you only need one block and it needs to be downloaded. Often I'll use the Data and Logging components together and that feels like enough functionality to justify the size. If your app is strictly on the server side then this really isn't too much of an issue. One of the things that is nice about it is that if you need more than one block you don't have to go to multiple implementations from multiple vendors that are configured in different ways. They also provide a tool to help with the configuration (that's a plus and a minus, a plus that they make it easy, a minus that they NEED a tool to help configure it).
I've had the pleasure of being invinted to a couple of Patterns and Practices workshops where I was working side by side with the team members who wrote EntLib. The intent in creating EntLib was to implement Microsoft's Best Practices in common components that everyone needs that are not part of the base Framework. They are very stable, provide very good performance and very good flexibility.
I would start by using some of the easier blocks, like Data and Logging. They're not too hard to configure and get started with. Then once you understand those it will be a bit easier to move on to some of the other blocks. I have not found a situation where you shouldn't use them, other than when you don't need them.