I had a E90 318d M Sport for a good while. It was a beast, never got around to the remap. I'd not buy a BMW that wasn't an M Sport, the stiff springs on them are pure cornering pleasure! The car was refined and you truly get what you pay for, especially the M Sports, worth the extra! It also managed bit over 800 miles to a tank! I do a lot of motorway!
Personally as a petrol, I'd not get anything with less than 6 cylinders! I owned a E36 2.8i for a little bit, and it was a missile! (Although very uneconomical).
If you do low miles, just get an E90 330i or even a 335i, OR go for a classic like an E46 M3! The only thing that stopped me was my heavy motorway mileage would ruin my fuel.
A 318i is boring, it's the budget BMW (on par with the 116i(& d), 118i(& d) for old people) and the value is dropping rapid. At least the 318d 320d hold their value and have outstanding economy.