No debate, assuming you like euro cars....
If you actually like driving cars around corners, refined power, motorsport, safety etc = BMW
If you like things dull, safe, lots of buttons and are conservative, but think your "sporty" = Audi
If you like all of this and want to save the planet you buy a 335d!
BTW I am very biased as I have a space grey 335d :-)