I've been bitten by Microsoft before (relied on tech they eventually killed), but decided it was worth it because of the modernization they had planned. Things such as AOT compilation, strong cross-platform support, lightweight runtime etc. was a giant productivity booster for me and my small team of 4 people.
Microsoft eventually backpaddled on a a few of their promises, but I still believe it was the right choice. I had doubts back then, but I would not hesitate today.
I just use it on the backend along with Entity Framework, a pretty neat ORM, and do my best to avoid lock-in into the rest of the Microsoft monoculture. Using Postgres for data, AWS for hosting, React with Vite for frontend because I would never trust MS to get that aspect right with their endless iteration of UI frameworks both on web and desktop.
Even though it's a cross platform Electron app I haven't built the Mac version yet - so I can't answer yet for any issues that might pop up there. (Only reason being I haven't got around to buying a Mac to test it on.)
Two reasons for using .Net. The first was it's what I've used most in the day job. Second is that a core sdk I need to use inside the app is .Net. Rolling my own in a sexier language would have added months or years to the development time.
.NET Core is great. It's good to go for cross platform development for anything non-gui related.
For client-side apps it is not cross-platform. There's MAUI which might hit all the targets you want, except GNU/Linux. Although Android/Linux is supported. The way to solve this is a web-based UI. There's several ways to go about having a locally running program with a web-based UI. Hijacking a web-based UI is not unique to .NET, so this is not an advantage, it's just this hack makes the lack of native UI not quite as important.
Also, which language/platform has really nailed down cross platform UI's while still being at least "somewhat" native on each target? There's really not many options. It's an industry wide problem. .NET has some decent escape hatches like Blazor. And maybe MAUI will get it right but the jury is still out.
As far as your development environment, you can use VS-code as your IDE in a cross platform way. Develop .NET software on a new M1 Mac? Yes you can! And with LSP you are not tied down to Microsoft tooling. With a little bit of configuration, you can can make Emacs or Vim a fully featured .NET IDE.
There's native AOT compilation so if you have some microservice that needs to spin up stuff, you don't need to worry about start up time.
Overall .NET just seems like an absolute killer tech. I think people are doing themselves a disservice to dismiss it just because it's from M$.
I think Blazor in particular has a lot of potential. I've grown disillusioned with front-end development over the past 5 years so it's worth trying something new and experimental. But I'm not sure I'd bet my career on it or ship it widely yet.
Project Reunion has a lot of potencial.
Our SeekTable started as .NET Core 1.1 app 6 years ago, it was upgraded to 2.1, then 3.1 and now it is a NET6 app. Upgrades up to 3.1 were pain in the ass, API/SDK evolution was quick and not backward compatible, however last upgrade to NET6 was easy - this is more a change of the run-time version, as APIs are not changed anymore and become stable.