Take it to a reputable shop that specializes on BMWs. I would avoid anything else. Marc Feinstein at German performance builds BMW racecars and also services road cars. I've had very good experience there. He know his stuff. He used to work at Turner (and he is a top notch club racer).
http://2002racing.com/bmwandporscherepair.html
Of course, you can always take it to Turner as well.
If you don't mind crossing into NH to get better labor rates and no tax, VSR is the place to go. Mario just built my S14 motor. They also service BMW race and road cars.
http://www.vsr1.com/