I cannot stress this enough...MAKE SURE they put your car on a structural bench to check the frame and alignment. IF they do that and correct all the areas that are off, the car will drive like new again. Same shit happened to my wifes car. it came out perfect and drove just as good as new. If the shop is just going to slap on new panels and welds here and there without first putting it on the BMW structural bench, then forget it. it wont be the same. There are specs that they have to correct while its on the bench.
heres what it looks like.