I have Debian Stretch running on a 3rd gen Thinkpad X1, and had some problems. It took about a year for suspend/resume to work reliably, before I had random lock-ups on resume. It turned out to be a bug in the early MMU code, and once it was fixed I had a very stable experience. This bug was hard to reproduce: on other Thinkpads in my company nobody had the issue, but with a slightly different environment (TP models, Ubuntu not Debian and different kernel versions).
More recently I had a regression for a few months, until the issue was identified (and fixed).
Both experiences made me more sensitive to Linux stability issues. If you look for it, you will find many bug reports. They typically are rather frustrating: they happen for some unlucky guy, but are hard or impossible to reproduce in slightly different contexts. I guess this can't really be avoided: both Linux and a modern PC are complex systems, and there are many variants. And no ODM doing integration tests (or not with your preferred distro of PC configuration). So some glitches are bound to happen. Considering the lack of ODM support and standardization, the situation is actually quite good. But there are bound to be glitches here and there. For those who want to avoid it, it's possible to avoid all this by getting a PC with Linux pre-installed, or with some integration test done (it seems to me there's some work done by Canonical for Ubuntu on some Thinkpad models, but not sure...). Also, not jumping on brand new laptop models can help too.
As for me, I prefer to stick with Debian on my laptop of choice, and handle the rare odd glitch when it happens. It's ok. Still, when I'll buy my next laptop I'll wait for the new generation to arrive, and buy the previous one. Cheaper, more stable with Linux, and not much hardware differences anyway nowadays.