Some work is generic. Oil change, brake pads and rotors, filters, coolant flush, radiator, water pump, alternator, starter, even suspension work, I would entrust any competent mechanic to do that type of work.
Some stuff is more specific. Engine building, head work, engine tuning, (especially tii) suspension mods, electrical troubleshooting, body panel adjustments would be more suited for an expert in out cars.
When going to a non-BMW guy, their choice of parts may be an issue. Brake pads and rotors, alternators, water pumps, coolant, brake fluid and so on can be quality or junk. Usually, a BMW shop would know better about parts brands, what to use and what to keep away from.