Poor gas mileage is one of the reasons I traded my 2009 M3 for a 2013 Audi S4. I was averaging 12.7 MPG in DC. The price of gas wasn't the issue for me...it was the frequency of fill-ups. I couldn't even make it 7 days without refueling. The S4 is so much better, as it's much more fuel efficient.
I'm not sure how you guys average over 20 MPG on the highway with the M3. I drove from Atlanta to DC on all highways with cruise control most of the way...I averaged 20.5 MPG...