OK HONEST ANSWER!!!!
You don't HAVE TO get snow tires. If you have ALL SEASON tires on your vehicle now, and the tread is very good, stick 100lbs or so in the trunk and with the traction control and taking it easy, you'll be ok. I've been doing that with my Mercedes 190E 2.6 for 5 years with Pirelli All Season tires on and two 50lbs bags of rock salt in the trunk (2 to balance out the wieght). It was very good and helped out alot in the snow, especially in amounts of 2-4 inches... anything over that... well tough shit.
If you've got the money and space DO THIS. Get steel wheels (not flashy BMW rims, stock, hubless rims, the ones that you could put a hubcap on, but don't) 16" or 17" in size. Get 205 size snow tires. Shouldn't be too expensive, and since they aren't flashy rims, you won't care about beating the shit out of them in the snow. You see, the idea here is, one set for winter only use, the other for the rest of the year. Just alternate them evey season. Garantee to make them last a long time too!
Four 205-17 tires will come to around $400+/-, depending on brand choosen. The steel wheels (typically black or steel in color) will come to around $60/rim. So....
$60X4=$240, $240+$400=$640 in parts. Figure another $100-$200 (est??) for labor and installation/balance. You've got 4 snow wheels exclusively for winter use. They will last you at least twice as long as if you would've just bought snow tires straight out. When the spring thaw comes, switch them out, get a jack and change the tires to your BMW rims. Just make sure that you've waited till the end of the snow season.
I hope this helps,
btw, here's a site that sells BMW steel wheels---->Wheels and Rims