Unfortunately the dealership is likely your only option. HOWEVER, not all dealerships are created equal (their pricing and service are excellent indicators of this). So shop around, and find a good price. eBMWparts.com (which is a dealership) was doing keys for $160 for a while.
1999 Techno Violet Metallic BMW M3
2005 Audi B6 S4 quattro 6MT
2004 BMW 330i
1986 BMW 535i