In my very humble opinion, there are two things that aren't working very well with modern BMWs. The first is the front grille, which is far too big on certain models, and the other thing is the infotainment system which is not as good as Mercedes Benz's and these things matter in certain market brackets and for certain cars. The good news is that M models are unaffected by either of those things because the front grille in (most) M models looks normal and because infotainment isn't really important in performance cars.
The M badge has always meant a lot more than just performance. M cars always had a soul, a certain je-ne-sais-quoi which other performance divisions couldn't match. However, I've been to an M day recently, I drove a couple of M cars and with the exception of the M5, they sort of felt a bit... wanting. Not in terms of dynamic abilities or performance but in terms of emotion.
In the past, the three-horse race between Audi, BMW and Mercedes was easy to read through. AMGs were for sheer speed and pure excitement, Audi S models were the perfect all-rounders whereas BMW M cars were the best in terms of technical performance. The truth is, even the modern M5 would outgun just about anything but something doesn't feel quite right. Somehow.
The thing is, modern AMGs are crisp and sharp, they're objectively better than they were but still mad as a box of frogs. Similar story with the Audis, because the Audi S cars of today are still great cruisers as well as bruisers. Meanwhile, I feel like the M badge has become a bit aspirational.
Let's not kid ourselves here, manufacturers have to sell cars first and foremost and BMW is doing great on that front. I'm all for BMW gaining shares in the market, I'd just rather they didn't dilute their soul while doing it.