.NET on Linux: What a Contrast
Modern .NET has matured into a strong cross-platform platform, with many developers reporting that C# development now feels nearly identical on Windows and Linux, especially for backend and web work. Commenters highlight improved tooling (VS Code with the C# Dev Kit, JetBrains Rider, containerized workflows) and significant adoption drivers like Unity, while criticizing Microsoft’s inconsistent strategy for native GUI frameworks and web UI (MAUI, Blazor) and the lack of first-party Linux desktop support. Third-party UI frameworks such as Avalonia and Uno, along with memories of Mono and Delphi, underscore how much of the ecosystem’s innovation is happening outside Microsoft’s own UI stack.
.NET in Game Development
- Unity is described as a key driver of C#/.NET adoption outside “enterprise” use, especially for developers who never touch Microsoft tooling.
- Unity is criticized for being stuck on an old Mono fork; some note ongoing work to move to a modern .NET runtime and current support for C# 9 and .NET Standard 2.x.
- IL2CPP is widely used (especially on mobile/console), improving performance and anti-cheat, but one commenter notes it can actually make modding easier due to exposed metadata.
- Alternatives like Godot with C# and Visual Studio debugging are highlighted as benefiting from Microsoft’s modern runtime and tools.
Cross-Platform GUI: MAUI, Avalonia, Uno, WPF
- Multiple comments label Microsoft’s cross-platform GUI story as weak or unstable over time.
- MAUI is the “latest” official solution but is criticized: buggy, weak for desktop, and notably missing Linux support, which some see as a symbolic slight to Linux as a first-class citizen.
- Avalonia and Uno are repeatedly recommended as de facto cross-platform UI frameworks that actually run on Linux; Avalonia is often praised as “far ahead” of MAUI.
- Some still like WPF; Avalonia XPF (WPF-on-Linux/macOS) is cited as attractive.
State of .NET and Tooling on Linux
- Consensus that .NET’s cross-platform runtime story is now strong, especially from .NET Core 3.1 onward and with .NET 8.
- VS Code with the C# Dev Kit is seen as “good enough,” but many argue JetBrains Rider provides a significantly better, more scalable C# experience on Linux and macOS.
- The Dev Kit’s licensing (free only in community-like scenarios) is viewed as a drawback.
- Some feel Microsoft deliberately limits VS Code parity to keep Visual Studio as the flagship product.
Blazor and Web Stack Positioning
- Blazor gets mixed reviews: some call it a “disaster” compared to Next.js/Remix/Svelte; others say Blazor Server is excellent in specific “HTML over the wire” scenarios where not having a separate API is valuable.
- There is concern that lack of a competitive .NET web front-end story is pushing customers toward JavaScript/TypeScript stacks, away from IIS/Windows/SQL Server.
Migration and Backward Compatibility
- Experiences migrating from ASP.NET Framework to ASP.NET Core are split: some report relatively smooth transitions except for certain libraries and WCF; others describe it as highly non-trivial, with major API changes and missing frameworks (WebForms, older OData, bundling).
- One perspective is that Microsoft “dead-ended” large legacy apps, forcing expensive rewrites and eroding trust compared to its historical backward-compatibility reputation.
WSL2, Corporate Use, and Developer Workflow
- WSL2 is praised for making Windows tolerable and enabling a good Linux-based development workflow (especially with VS Code and Docker), but several note that corporate environments often forbid WSL2 and sometimes Docker.
- Some developers prefer pure Linux for .NET due to better CLI tooling and discomfort with PowerShell.
Ecosystem, Licensing, and OSS Expectations
- Several comments argue .NET on non-Windows is primarily driven by Azure/cloud needs rather than genuine first-class desktop ambitions.
- Comparisons are drawn with Java ecosystems: free, full-featured IDEs (IntelliJ Community, Eclipse, NetBeans) vs .NET’s more commercialized tooling and gated “pro” features in the VS Code Dev Kit.
- The absence of a first-party Linux GUI in MAUI is contrasted with FOSS efforts like Avalonia/Uno, leading to claims of “second-class” treatment for Linux. Others counter that many languages (Go, Java) also lack strong official GUIs, yet do not face the same criticism.
Historical Mono Context and Nostalgia
- Several reminisce about the Mono era, when running .NET on Linux was novel and community-driven, and note that early reactions from Microsoft and some in the community were negative.
- There’s a sense that, despite current technical improvements, some community distrust and skepticism persist from that history.