I ran Linux as my primary desktop OS when I was in High School and College. I fought with NVIDIA and printer drivers, I tweaked XF86Conf to get dual monitors, I cursed more sound subsystems than I care to remember. I was fairly fluent - you had to be simply to get a working system back then.
Things have improved somewhat - I can install a distro on a laptop (such as the T420s I currently run Linux on) and it will support my wireless networking and my native display resolution and my touchpad out of the box. The technical pieces have improved. What hasn't improved is the mindset.
Linux doesn't care about the user. Linus may go on about the kernel never breaking userspace, but that doesn't stop userspace breaking itself over and over - by design or accident.
I upgraded my laptop to the latest version of Linux Mint yesterday. The preferred way to do that is to wipe my laptop, do a clean install, and reconfigure everything. How is that an acceptable user experience? There is an upgrade script, but it forces you to remove any third-party apt repositories and has no override switch. I commented out my third-party repos, did the upgrade - and it deleted those entries from /etc/apt/sources.list.d. Thanks for the data loss! Even without that, the process was painful - it didn't persist my elevated credentials, so I had to come back during the upgrade and type my password at a sudo prompt a total of 3 times over the course of half an hour.
When pieces of the Linux ecosystem play together, it feels more like a lucky accident than anything planned. For instance, let's say you want to try out the i3 window manager. Most guides will tell you to use dmenu as a program launcher. This works fine right until it doesn't - let's say you want to run a program which requires root. It will simply silently fail without even an error dialog. You're left to go back to the command line and search around to hope you can figure out what the equivalent command is and run it manually there.
Now, I'm sure you'll talk about how i3 isn't the default Linux window manager and is designed for power users. That's not an excuse for silently failing in dmenu without any information, but let's talk about other areas.
Linux is significantly behind Windows, OS X, and Chrome OS in all areas of accessibility. Screen readers, magnifiers, high DPI, different DPIs for different monitors. This is a combination of multiple UI frameworks each with their own way of doing things and the fact that the greater Linux community has to be dragged kicking and screaming into a modern graphical experience. Linux users are still fighting against compositors, which means that the Linux graphics stack is still trying to catch up to Windows Vista (which is now 14 years old).
I would need to keep a journal to talk about all the little quirks I run into with Linux, but every week there are multiple things. Maybe Icing Window Manager went away, so my Cinnamon taskbar is broken and I have to do research to find that it's been replaced by "Grouped Window List". Maybe my touchscreen isn't working - or is it working and this app isn't responding to its signals? Do I REALLY need to print things from this PC? Is it worth trying to get that running?
Are there solutions to these problems? In theory, yes. In practice, the communities around many pieces of Linux software are either actively hostile to suggestions ("why don't you go code that up yourself"), assume a high level of technical proficiency ("just go manually specify all of your network configuration in this text file") or expect an investment of time ("haven't you read these four documents"?)
I am unwilling to spend the time to use Linux that regularly. I have been using Windows devices in one form or another for 27 years. As time has gone on, the one thing I've come to respect is that for the most part they just work. I can remove hardware, add hardware, remove software, add software, upgrade repeatedly - and they just keep trucking. Other than times when I have manually screwed up Bitlocker, I cannot recall the last time my Windows machine wasn't able to boot into a graphical environment with networking - no matter what I had done. I suppose it would have to be back in the XP days. Despite people on this forum and other complaining about upgrades, there are millions of PCs out there and the vast majority go through windows updates every month (including major updates twice a year) without a hitch. Every time I do a major Linux upgrade it's far more of a gamble.