3K is excessive, a left-over from early dino oil days (there was a time when an oil filter was optional). The service interval usually goes for around 15-16K (mine 19K!?!?), but BMW will also do it annually regardless of mileage. In between would be prudent, say 7.5K, and its your nickel; but I think it's worth it only IF YOU PLAN TO KEEP THE CAR.
So if you're on a lease, or will likely trade/buy, sell/buy before the car hits 100K, it's most economical to follow service recommendations. The effect of more aggressive oil change intervals only starts to show well past 100K. Or, if you've a particularly desirable enthusiast-oriented bimmer optioned "right," a fellow enthusiast might pay a bit more for the added maintenance when it's time to sell the car.