You gotta meet the customer halfway until you get enough of them hooked, then slowly start introducing new ideas into their mental ecosystems that align with your vision.
Then add adverts into that ecosystem and center their program menu. Ooh! Then change their right menus! They'd love that! Or, maybe they won't, but whatever.
The company was run by morons so "Xerox" deserves being synonymous with "company run by morons". But the actual Xerox employees who invented the basic GUI deserve credit for being the great inventors they were. Unfortunately I have no fucking idea who those actual people were.
But no person on the planet, except the nerdiest of pedants, are thinking of Xerox when they see Windows interface. They think of Windows, even if it's KDE
I like the terminal but don't remember all the arguments. I find that clunky. That's my main issue with it. (I'm open to suggestions if anyone has any)
I highly recommend zsh. It takes a moment to setup initially, but you can use oh-my-zsh to just skip that part and use one of the many, many presets, and it supports plugins, of which there are many. It gives you tab support for so many popular commands, you will never need to remember them, and it has a lot of small improvements that makes your terminal life a breath. For example, if you do cd tab in bash, it will give you a list of subdirrectories. If you do the same in zsh, it will give you that list and a cursor that you can use to navigate said list, so instead of typing the dir, you can do cd tab tab tab enter
I have very little experience with fish, but by my first experience zsh was way better at handling wildcard matching, and for me it's half of the stuff I do. You are trying to open a file and all you remember is that it has some substring in the name probably, you just type some of it, double tab, and you have all the files that match. At the time I was trying it, fish couldn't do it.
Lots of terminal commands come with tab-completion out of the box (start typing a command, hit tab to autocomplete, hit tab twice to bring up a list of available options), or have tab completion scripts you can install after the fact.
Lacking tab completion, any worthwhile terminal commands will at least support a -h/--help flag that will print out a help menu summarizing the different options, or you can open up the man pages to see even more detailed documentation with man [whatever terminal command]. If the terminal command doesn't have either of those, I'd recommend against using it.
I use macOS as my daily driver, though still use Linux sometimes. When I dual-booted macOS with Linux, I immediately fell in love. I don't have a Mac, but my next computer will be a MacBook. Of course there are things I don't like, but I will not write it down right now, maybe edit this comment later.
I love the virtual desktops tough, I always press the green button on Safari to maximize, and put it on a new desktop, so I can easily switch with a 4-finger swipe, and I don't have to overlay another window or Safari when I am switching apps.