Went to the dealership with 5 specific issues:
a) Noise when I drove the car - conclusion - both back bearing needed changing (correct diagnosis) and changing of differential (incorrect diagnosis);
b) Steering shook when I braked between speeds of 60-90kms; they said that the front brakes were fine (incorrect diagnosis) and needed to change the rear shocks as leaking (incorrect diagnosis)
c) They recommended changing a belt - fine
d) Fan noise - play in the motor, they recommended not worth changing - fine
e) A/C was not blowing cold air and they put in the gas and said to test leak - correct; which made it work for now.
They charged me over $600 for diagnostic and quoted cost of about $10,000 just for fixing a, b and c above (their cost included shocks and differential) - Crazy.
Went to another BMW approved service provider. Got bearing changed, belt changed and front brakes changed. That dealt with all main issues a, b and c (no shaking and no noise anymore). Total cost - $2300. The mechanic told me that shocks were ok and differential was fine (and clearly so as the noise went away). Who should I trust - not the BMW mechanic as they incorrectly told me that my front brakes were fine and not the cause of the steering shaking.
My guess, they wanted me to sell my used car to them (since my term was coming up in Aug'19) and buy a new one. Can't trust anyone. Very disappointed. Never going back there and seriously thinking of never buying BMW..