Welcome
Welcome to the Avalonia documentation. Whether you are building your first app or migrating an existing project, these docs cover everything from installation to deployment.
These docs cover Avalonia 12. For Avalonia 11 documentation, visit v11.docs.avaloniaui.net.
What is Avalonia?
Avalonia is an open-source, cross-platform UI framework for building applications with .NET. It uses its own rendering engine to draw controls, so your app looks and behaves the same on every platform. Write your UI once in C# or F# with XAML, and deploy to:
- Windows (10, 11)
- macOS (Apple Silicon and Intel)
- Desktop Linux (X11 and Wayland)
- Embedded Linux (framebuffer on Raspberry Pi and similar devices)
- iOS and Android
- WebAssembly
For exact version and architecture details, see Supported platforms.
Key capabilities
| Capability | Description |
|---|---|
| Cross-platform rendering | Avalonia's own rendering engine produces pixel-identical output on every platform. Skia is the default backend, and the team is collaborating with Google's Flutter team to bring the Impeller rendering engine to .NET. No native control wrappers, no platform-specific quirks. |
| XAML and code-behind | Describe your UI declaratively with XAML or build it entirely in code. Avalonia XAML will feel familiar if you have worked with WPF or UWP. |
| Styling system | A CSS-inspired styling system with selectors, style classes, pseudoclasses, and control themes. See Styles. |
| Data binding | Compiled bindings checked at build time, full MVVM support, and integration with CommunityToolkit.Mvvm. See Data binding. |
| Rich control library | 60+ built-in controls including DataGrid, TreeView, TabControl, Calendar, and more. Fully styleable and templatable. |
| Accessibility | Built-in support for screen readers and keyboard navigation across platforms. |
| DevTools | Press F12 at runtime to inspect the visual tree, properties, styles, and layout. |
Choose your path
New to Avalonia?
- Install Avalonia and set up your IDE
- Create your first project
- Follow the starter tutorial to build a temperature converter app
- Learn the fundamentals: XAML, controls, layout, and the visual tree
Coming from WPF?
Avalonia's API is intentionally close to WPF, but there are important differences in styling, templates, and the property system.
- WPF migration guide: a section-by-section comparison
- WPF cheat sheet: quick mapping of WPF concepts to Avalonia equivalents
If you need to run an existing WPF application cross-platform without rewriting it, Avalonia XPF provides binary-compatible WPF support on top of Avalonia's rendering engine.
Upgrading from Avalonia 11?
Avalonia 12 includes compiled bindings by default, a new clipboard API, updated window decorations, and more.
- Breaking changes in Avalonia 12: full list with migration guidance for each change
Looking for samples?
- Samples and tutorials: starter apps, real-world examples, and video walkthroughs
Need help?
If you get stuck, check the Troubleshooting pages or connect with the community on GitHub Discussions.
To report a bug, open an issue on GitHub.