I'm learning to create a desktop application for a friend's business. I already know some C#, .NET MVC, and ASP.NET, so I started exploring Avalonia UI. I completed the temperature conversion example from the official documentation, but I'm having trouble finding enough tutorials and project-based learning material.
Which desktop framework would you recommend, regardless of language? Cross-platform support would be useful, although a Windows-only solution may also work. I'm also considering web-based desktop tools such as Electron, but I've heard they can use a lot of memory.
1 Answer
The main decision is whether the application needs to run on multiple operating systems. Avalonia is cross-platform and conceptually similar to WPF, but its ecosystem, documentation, and tooling are still smaller, which can make development frustrating.
If Windows-only is acceptable, WPF is probably the easier choice for someone with your C# and .NET background. It has been around longer, has much more documentation, and you’ll find far more examples and community support. For cross-platform development, you could also look at Tauri or Electron, though web-based desktop apps can feel less native. Electron is convenient and well documented, but it generally uses more memory because it bundles a browser engine.

That makes sense. I’m leaning toward WPF now because the additional learning resources should make it easier to finish the business application. I was mainly interested in Avalonia so I could include cross-platform desktop development in my portfolio, and I had also considered Electron before hearing concerns about its memory usage.