I owned a G35 S 6MT for 5 years (May 2007 - May 2012). At the time I bought it, I also looked at the 3 series and picked the G as it met my overall requirements better at that time. It was a great car. 100% reliable and very fun to drive. It also held its value very well - I bought it for 34,000 and sold it for 17,500 5 years later with 50K miles on it. The primary downside was that the car only got 20 MPG. My requirements changed earlier this year and I wanted to move from a 6MT to an auto trans car. So I drove the G37S Auto, and in the same day drove a 328 and 335 - both with the 8-sp auto. This time, the 335 felt best to me - no-brainer better vs the G auto trans... and overall met my requirements better this time. Best part - I have a 80 mile r/t daily commute with 50% local streets and 50% highway. After 7500 miles, the 335 is averaging 26.5 MPG. This is a 30% improvement over the G... which was a real bonus especially since "better gas mileage" was not one of my requirements. If I drove this 335 for those 50K miles in the G, I would have spent $2200 less on gas over those miles.
so my advice to the OP - define your requirements, then find the best car that meets them. There is all sorts of advice and opinions on this board... some may be relevant to you, some may not. A drum teacher back in the day once told me "any sound can be a good sound, as long as it is the sound you want".