Build client web apps with C#
To learn more, visit the Blazor documentation.
Blazor can run your client-side C# code directly in the browser, using WebAssembly. Because it's real .NET running on WebAssembly, you can re-use code and libraries from server-side parts of your application.
Alternatively, Blazor can run your client logic on the server. Client UI events are sent back to the server using SignalR - a real-time messaging framework. Once execution completes, the required UI changes are sent to the client and merged into the DOM.Tooltip: The document object model(DOM) is a programming interface that represents all elements on an HTML page as nodes in a tree structure. Using the DOM, elements can be updated, added, and removed from the page.
Build native client apps using existing Blazor web UI components with Blazor Hybrid. Share the same Blazor components across mobile, desktop, and web while taking advantage of full access to native client capabilities. Use Blazor Hybrid to build cross-platform apps with .NET MAUI, or to modernize existing WPF and Windows Forms apps.
Blazor apps can use existing .NET libraries, thanks to .NET Standard—a formal specification of .NET APIs that are common across all .NET implementations.
.NET Standard allows the same code and libraries to be used on the server, in the browser, or anywhere you write .NET code.
Love to watch videos? So do we. We've recorded a full Blazor for Beginners video series to take you through the essentials of building web apps with Blazor.
Visual Studio and Visual Studio Code provide a great Blazor development experience on Windows, Linux, and macOS.
If you prefer to use a different editor, there are .NET command-line tools that allow you to work with the editor of your choice.
Blazor has an active community that is answering questions, producing samples, writing tutorials, authoring books, and more. Awesome Blazor provides a great community-maintained list of Blazor resources.