.NET hồi 2026 — không còn là "ông già" công nghệ như mình nghĩ

Phong

Hồi mới ra trường, mình từng làm việc với .NET Framework mấy tháng. Cảm giác hồi đó — nặng, chậm, install đủ thứ, chỉ chạy được Windows. Rồi mình nhảy qua JavaScript, TypeScript, Rust, Go — mỗi thứ một tí. Cứ nghĩ .NET là mấy ổng enterprise xài thôi, hông liên quan gì tới đời mình.

Rồi một ngày, mình gặp cái bug trên Node.js backend, debug từ chiều tới tối hông ra. Ức chế quá, mình mới thử viết đại cái API bằng .NET 8 coi sao. Và thiệt luôn — kết quả làm mình bất ngờ.

Ảnh: Lukas Blazek — Pexels

Tại sao mình thay đổi suy nghĩ?

Thứ nhất, cross-platform thiệt sự. .NET chạy Linux ngon lành, cài qua dotnet CLI là xong, hông cần Visual Studio, hông cần Windows. Docker image chỉ tầm 100-150MB cho một API — nhẹ hơn mình tưởng.

Thứ hai, performance quá ngon. Mấy năm gần đây ASP.NET Core luôn dẫn đầu TechEmpower benchmarks. Mình thử viết cùng một endpoint với Express (Node.js) và ASP.NET Core — .NET nhanh gấp 3-4 lần, memory thấp hơn. Ngạc nhiên thiệt sự.

Thứ ba, cộng đồng OSS mạnh mẽ. Entity Framework Core cho database, Minimal API cho REST, Blazor cho full-stack C#. Cả hệ sinh thái mở, ai cũng đóng góp được.

Còn một cái hay nữa — AOT compilation với Native AOT từ .NET 7+ cho phép build thành binary một file, không cần runtime, startup gần như tức thì. Hợp với serverless với container deployment.

Cái mình thích nhất là Minimal API — quen với dân JS/TS vì syntax gần giống Express:

var app = builder.Build();
app.MapGet("/api/users/{id}", async (int id, AppDbContext db) =>
    await db.Users.FindAsync(id) is User u ? Results.Ok(u) : Results.NotFound());
app.Run();

Typed, compiled, bắt lỗi ngay compile time. Nhàn hơn mấy vụ "undefined is not a function" debug tới sáng 😂

Ảnh: ThisIsEngineering — Pexels

Mình hông nói .NET thay được hết. Với frontend thì JavaScript/TypeScript vẫn là vua, với hệ thống thì Rust vẫn ngầu. Nhưng làm backend REST, .NET giờ là lựa chọn đáng để thử.

Nếu bạn chỉ biết .NET từ cái thời phải cài IIS, viết WebForms, mở solution 5 phút mới load xong — hãy cho nó một cơ hội nữa. .NET 8, 9 bây giờ khác lắm. Mình nói thiệt.

Còn bạn, đã thử .NET gần đây chưa? Hay vẫn giữ ấn tượng \"ông già\" như mình ngày xưa? 😄