I had a 1200 GS for 2,5 years, and I now have a XT660Z Yamaha. Did about 15000 km on each, on all kinds of road and off road.
The BM is a liability on anything more than gravel, in mud or sand it just STOPS or falls over. With that Paralever front end, you HAVE to stand up when off road. I had a lot of trouble with my BM. Pages of warranty claims, and expensive to service.
The Tenere is absolutely reliable, do a Google search for BMW problems and then XT660Z problems and see what comes up.
The XT660Z is a very, very, tough, reliable bike, my only complaint is that the rear suspension is a bit hard.
So, an out of warranty BM (OR ANY BM for that matter) or a brand new Tenere with a two year unlimited mileage warranty?
I'd buy the Yamaha every time. If my Yamaha got stolen, I would be back at the Yamaha dealer the next day to get another one, to me there is just no choice at all.