From Legacy Constraints to Modern Revival
In the past, Microsoft WebForms was a system that offered only limited and inefficient patterns. Structural weaknesses, heavy dependency on ViewState, poor performance, and lack of flexibility forced many developers and businesses to migrate their systems to MVC, Razor Pages, Blazor , and even Minimal API .
These migrations primarily occurred because Microsoft failed to present any clear roadmap for improving and modernizing classic WebForms.
However, in 2024 , the Elanat introduced WebForms Core —a completely new approach that not only distanced itself from the weaknesses of classic WebForms but also redefined its concept with modern web architecture.
Initially introduced as one of the core capabilities of the CodeBehind framework, this technology rapidly gained traction due to its standalone design and flexibility, becoming implementable and executable in various popular programming languages .
Today, Elanat has released WebForms Core as a standalone package on NuGet , enabling direct usage in .NET projects including MVC, Razor Pages, and Minimal API.
Package link:
https://www.nuget.org/packages/WFC
WebForms Core: Neither a "Return to WebForms" Nor a "Blazor Competitor"
What WebForms Core Is NOT:
❌ NOT a revival of classic WebForms – No ViewState, no page lifecycle complexities
❌ NOT a Blazor alternative – Different architecture, different use cases
❌ NOT another JavaScript framework – Server-first, JavaScript-light approach
❌ NOT tied to specific UI patterns – Works with MVC, Razor Pages, and Minimal API
What WebForms Core IS:
✅ A serious server-centric DOM platform in the .NET ecosystem
✅ A modern architectural alternative for server-driven DOM control
✅ A bridge between backend logic and frontend interactions
✅ A performance-optimized , modern approach to full-stack development
Architectural Innovation: How WebForms Core Works
The Core Principle
WebForms Core operates on a simple yet powerful principle: Server controls DOM, Client renders efficiently .
Server-side (.NET)
WebForms form = new WebForms();
form.SetValue("username", "JohnDoe");
form.SetBackgroundColor("<main>", "lightblue");
form.SetGetEvent("btnSubmit", "onclick", "/api/submit");
return form.Response();Result
[web-forms]
svusername=JohnDoe
bc<main>=lightblue
EgbtnSubmit=onclick|/api/submitThe client-side WebFormsJS library (just 40KB after Minify + Gzip) interprets these commands and applies them to the DOM with surgical precision.
Key Technical Innovations
Lightweight Protocol : Uses a simple INI-Like protocol instead of heavy JSON/XML
Intelligent DOM Targeting : Advanced selectors for precise element manipulation
Built-in Real-time : SSE and WebSocket support out of the box
Automatic Optimization : Only changed data is transmitted
No JavaScript Fatigue : Minimal client-side code required (Close to zero)
Why .NET Developers Should Pay Attention
For Backend-Focused Teams
WebForms Core addresses a critical pain point: backend developers can now build interactive UIs without deep frontend expertise .
Traditional approach: Backend API + Frontend Framework
[ApiController]
public class UserController : ControllerBase
{
[HttpPost("update")]
public IActionResult UpdateUser(UserDto user)
{
// Backend only - frontend needs separate implementation
return Ok(new { success = true });
}
}WebForms Core approach: Unified control
public class UserController : Controller
{
public IActionResult UpdateUser(UserDto user)
{
WebForms form = new WebForms();
form.SetValue("displayName", user.Name);
form.Message("User updated successfully", "success");
form.SetDisabled("btnSubmit", true);
return Content(form.Response(), "text/plain");
}
}Performance Advantages
| Metric | Traditional SPA (React/Vue/Angular) | WebForms Core | Advantage |
|---|---|---|---|
| Initial Load | 200-500KB JS | 45KB JS | 4-10x lighter |
| Time to Interactive | 2-5 seconds | <1 second | 2-5x faster |
| Backend Complexity | High (API design) | Low (direct control) | Simpler architecture |
| Frontend Complexity | High (state management) | Minimal | Reduced cognitive load |
WebForms Core loads only a single lightweight library on the client’s first request, whereas traditional SPAs typically require downloading multiple, often large, JavaScript libraries.
Actual performance may vary depending on application complexity and deployment environment.
Seamless Integration with Existing .NET Projects
Add Package
<!-- Add to your .NET project -->
<PackageReference Include="WFC" Version="2.0.0" />Access to NameSpase
using WebFormsCore;Use with Minimal API
app.MapPost("/submit", async (HttpContext context) =>
{
WebForms form = new WebForms();
// Process form data
var name = context.Request.Form["name"];
// Update UI directly
form.SetText("result", $"Hello, {name}!");
form.SetBackgroundColor("result", "lightgreen");
return form.Response();
});Use with MVC
public class HomeController : Controller
{
public IActionResult Index()
{
WebForms form = new WebForms();
form.SetGetEventListener("loadData", "click", "/api/data");
ViewBag.WebForms = form.ExportToHtmlComment();
return View();
}
}Use with Razor Pages
public class ContactModel : PageModel
{
public IActionResult OnPost()
{
WebForms form = new WebForms();
form.Message("Thank you for your message!", "success");
form.CallSSEBack("/api/sse/event1");
return Content(form.Response());
}
}WebForms Core Architecture
WebForms Core revolutionizes web development through a clean Commander-Executor architecture where the server acts as Commander—defining logic, events, and DOM changes—while the lightweight WebFormsJS library (just 40KB) serves as pure Executor on the client. This stateless server approach sends concise INI-formatted commands that enable direct DOM manipulation without page reloads, working seamlessly with MVC, Razor Pages, or Minimal API while maintaining full HTML standards compliance.
Unlike traditional frameworks, WebForms Core eliminates JavaScript fatigue by letting backend developers build interactive UIs using their existing skills. It supports real-time features like SSE and WebSocket natively, offers offline capabilities through Service Worker integration, and even allows client-side execution without a server.
This architecture is even suitable for games
✔️ WebForms Core can create dynamic, game-like, real-time UI
✔️ Can create animations with CSS + DOM + timer + event
✔️ Latency is acceptable for this style of interaction
✔️ Even game logic can be server-driven
However, Not ideal for frame-critical, high-frequency rendering scenarios such as canvas, WebGL, or GPU-driven animations.
To better understand where WebForms Core fits within the .NET ecosystem, the following comparison highlights practical trade-offs across common UI technologies.
Comparison with Other .NET UI Technologies
Comparison assumption: Standard web projects (Admin, LOB, Enterprise, MVP)

Join the conversation! Your thoughts help the community grow.