On this page
Overview
Avalonia is a cross-platform .NET UI framework for C# or F# and XAML. It targets Windows, macOS, Linux, iOS, Android, and WebAssembly while providing a shared control and styling model.
Features and best fit
Based on official documentation; not hands-on tested · Content checked:
Key features
Target desktop, mobile, and browser platforms from one framework
The same UI framework supports Windows, macOS, Linux, iOS, Android, and WebAssembly with a shared control and styling system.
Use familiar XAML and .NET development workflows
Avalonia provides a WPF-like XAML development model and tooling for Visual Studio, VS Code, and Rider.
Sources: [1]
Best fit
Before adoption
Do not assume one-to-one WPF compatibility
The README explicitly says Avalonia is similar to WPF but is not a 1:1 copy. Migrations should validate differences in styling, templates, and the property system.
Sources: [1]
Account for platform-specific SDK and workload requirements
Mobile and WebAssembly targets require additional .NET workloads, while building the framework repository itself expects a pinned compatible SDK. Separate framework-contributor requirements from application-consumer requirements.
Official sources
- [1]Avalonia README(2026-10-03)
- [2]Avalonia Getting Started(2026-10-03)
- [3]Avalonia build instructions(2026-10-03)
- [4]Avalonia 12.1.3 release(2026-10-03)
Supplemental curator note
Avalonia is a strong option for teams that want to reuse .NET and XAML skills across operating systems. It is not a 1:1 WPF implementation, so migrations should validate styling, property-system behavior, and platform-specific integrations early.
Try it in 3 steps
- 1
Install the Avalonia project templates
Add the official templates to a .NET 8 or later environment.
dotnet new install Avalonia.Templates - 2
Create a minimal Avalonia application
Generate a small desktop C# and XAML project.
dotnet new avalonia.app -o TestApp - 3
Run the generated application
Verify that the project builds and starts. Mobile and WebAssembly targets require additional workloads.
dotnet run --project TestApp
Growth
Growth trends · Last 30 days
31,619 Stars
Trend data is still being collected.
Development activity
Last 90 days · weekly
- Commits (last 30 days)
- 72
- Open PRs
- 81
Development activity is still being collected.
Built with
Categories and tags
Categories
GitHub data
GitHub dataView detailed GitHub data
GitHub Topics
- c-sharp
- xaml
- gui
- avalonia
- avaloniaui
- cross-platform
- dotnet
- csharp
- desktop
- mobile
- wasm
- app-framework
Related information
Write a related articleShare a guide or use case for this OSS in Markdown. Articles are published after administrator approval.
Explore next
- Tauri111,560 Stars
3 shared tag(s) · 2 shared category(s)
Combine a web frontend and Rust native layer into desktop and mobile apps using system WebViews
Rust - Expo52,540 Stars
3 shared tag(s) · 2 shared category(s)
build React Native apps for Android, iOS, and web from one project model
TypeScript - .NET MAUI23,321 Stars
3 shared tag(s) · 1 shared category(s) · Same language
build native Android, iOS, macOS, and Windows apps from a shared C# and XAML codebase with a cross-platform UI framework
C# - .NET Community Toolkit3,762 Stars
2 shared tag(s) · 2 shared category(s) · Same language
add MVVM, argument-validation, and high-performance memory helpers to .NET applications as UI-framework-agnostic NuGet packages
C# - Electron123,357 Stars
2 shared tag(s) · 2 shared category(s)
bundle Chromium and Node.js to build desktop applications for three major operating systems with HTML, CSS, and JavaScript
C++ - Windows Presentation Foundation7,737 Stars
2 shared tag(s) · 1 shared category(s) · Same language
build high-DPI Windows desktop interfaces on .NET with XAML, data binding, vector graphics, controls, resources, and flexible layout
C#
Report incorrect information
Tell us if any listing information is incorrect or outdated.