your car isn't as simple to do as many people think. In fact, most German cars are a trememdous head ache to an installer. You'll run into problems with integrated amplifiiers and some other ****. Please, just pay someone to install this for you. It's well worth your time and money.
I know somebody is going to reply to this and say something really clever like, "Don't do that, you'll never learn that way."
To which I say, "Who cares? Do you install for a living? then what difference does it make if you know how to or not?"
The other thing is..............In my install shops we break car parts every day. From door clips to whole dash boards. We are insured, so the customer is never out anything if there is damage done. If you do it yourself you do take a risk in breaking something. If that were to happen, BMW dashboards aren't cheap.