I have used Twin Star for more than 20 years to service the 5 BMW's I have owned. Yes, work can be expensive. However, understand that BMW's in general are expensive cars to own and maintain. In every situation I have found them to be fair and honest. My 5 series has been maintained by them from the beginning and has 250k and is still running strong.
Pros: Honest, dependable, reasonable, fair
Cons: Call in advance, can take a few days to get on the schedule