I haven't owned an Apple product since my Power Mac G5, but work bought me an M1 Max Macbook Pro. I have to say, I'm pretty impressed with the performance, I really didn't expect it to be as fast as it is. I've been Linux only since 2007 (other than a Windows VM for some applications), so MacOS takes a little getting used to (and is frustrating at times), but homebrew really helps. The one thing that is really nice is that suspend/resume works instantly and reliably, which is something that has always been a bit flakey (will sometimes to fail to enter suspend) or laggy on my Thinkpads with Ubuntu. And battery life is fantastic, though Chromebooks also get similar battery life and run Linux (via crouton or crostini, or both).
Another thing that is annoying is drivers... I had a USB ethernet adapter that I couldn't figure out why it wasn't working (an ethernet device showed on the system). Turns out MacOS didn't have the drivers for it, which was something I wasn't accustomed to coming from Linux where drivers for most things are built into the kernel. Driver installation was a bit of a pain, requiring 3 reboots. Likewise, loading kernel modules in MacOS for things like FUSE are a pain, since you have to do multiple reboots and enable things in the bootloader, etc.
Lastly, the lack of package management or any sort of uninstall method is.... sad. For most applications you just drag their folder into the Applications directory, which makes them easy to also remove, but some are .pkg files which copy files places and run install scripts. The system apparently keeps a record of pkgs that have been installed, but there is no universal way to uninstall them. The system records the files that were copied, so you can manually remove them, but it doesn't track what the scripts do. So to uninstall those you need to save the original pkg and there are tools that can analyze them and tell you which files were touched by the installer scripts. You can then manually remove or revert those files. Some software will ship with an uninstaller pkg as well that you can run. But my point is that cleanup for these types of applications isn't easy.