Having lead a team of .NET developers who were slowly being moved that direction (as they were the only .NET devs in the company) here were some of the major hangups:
1) A lot of it is just muscle memory that doesn't work in MacOS. Can't do Ctrl+C, it's Cmd+c. Figuring out the equivalents of things you haven't even thought about doing in a decade can be tough.
2) Not all, but many of them only knew how to work via GUI. Visual Studio for Mac does enable you to do most of that, but learning new stuff like Node requires you to drop into a command line, and more than a few felt like that was way less intuitive and easy to use. They preferred menus you can click through over man pages.
3) A surprising one: case sensitivity. Windows doesn't care, but Mac does for things like filenames. This in combination with 2 would mean there would be some frustration as to why the OS couldn't find a file that was "right there".
4) A lot of them (I'd venture to say all of the ones I was in charge of) were still in .NET mostly because they had gotten comfortable with it, and weren't particularly invested in learning something new unless they had to. So of course throwing a whole new OS at someone with this mindset would be a little frustrating.
5) Building off of #4: some of the old guard came up when Macs were something you bought for the graphics designers and "real" developers used Windows. So they would still crack jokes about having to use a "Crapintosh" without realizing how powerful the ecosystem has become.