Blazor is a framework from Microsoft for building interactive web user interfaces using C# and .NET rather than JavaScript. The official documentation describes it as “a .NET frontend web framework that supports both server-side rendering and client interactivity in a single programming model.” Developers compose an interface from reusable components, each combining markup and C# logic, and Blazor renders that component tree to HTML and CSS for display in any modern browser, including mobile browsers.
The project grew out of an experiment to run .NET in the browser. Blazor began as a prototype around 2018, built on the emerging WebAssembly standard, which allows compiled code to run inside the browser sandbox at near-native speed. With WebAssembly, a .NET runtime can be downloaded alongside the application, letting component logic written in C# execute directly on the client. Microsoft shipped this client-side model, Blazor WebAssembly, as a supported release in 2020 as part of ASP.NET Core, giving .NET developers a way to build single-page-style applications without leaving the C# language.
Blazor offers more than one execution model. In Blazor Server, the component logic runs on the server and a persistent SignalR connection ships UI events from the browser and applies rendered diffs back to it, which keeps the initial download small and runs code on the server. In Blazor WebAssembly, the same components run entirely in the browser on the WebAssembly-based runtime. Later versions unified these into a single Blazor Web App model that can mix static server rendering with interactive server or client rendering on a per-component basis, and Blazor Hybrid extends the model to native desktop and mobile shells.
A central appeal of Blazor is code sharing across the client-server boundary. Because both the browser and the server speak C# and .NET, the same models, validation logic, and libraries can be reused on either side, eliminating the duplication that often arises when a JavaScript front end talks to a .NET back end. The component model, with its emphasis on composition and reuse, mirrors the broader industry shift toward component-based interface construction popularized by frameworks in the JavaScript ecosystem.
Blazor is developed as part of ASP.NET Core, with its source in the public dotnet/aspnetcore repository, and it represents Microsoft’s bet that WebAssembly can make the browser a first-class target for languages other than JavaScript. For organizations already invested in C# and .NET, it offers a path to full-stack web development in a single language, and it stands as one of the more prominent real-world demonstrations of WebAssembly as an application runtime.