What is your budget for this car? And more importantly, how often do you drive (better answered by how many miles do you think you'll put on in a given period of time...say a week)?
If you drive very little, it may economically make more sense to look at BMW's with more reliability and less maintenance requirement/costs rather than ones of better mpg. Plus, depending on who wins the next presidency, there may be less drilling rules for oil and gas may very well get cheaper or vice versa. So keep that in mind.
Honestly though, if you want good gas mileage, get a Hyundai or something...BMW's really aren't known for or made for good gas mileage, and they aren't exactly known for low maintenance costs and high reliability either.