← maurobernal.com.ar

De .NET 8 a .NET 10: qué cambió, qué mejoró y por qué conviene actualizar ya

Trabajo con .NET desde los tiempos de .NET Framework 4.5. Cada nueva versión traía algo interesante pero también algo que romper. El salto de .NET 8 a .NET 10 es diferente: es una consolidación. Rendimiento extremo, sintaxis más limpia, herramientas que finalmente hacen lo que uno espera. Esta serie cubre todo lo que vale la pena conocer.

La política de versiones de .NET: qué es LTS y por qué importa

Microsoft lanza una versión mayor de .NET cada noviembre. Las versiones pares son LTS (Long Term Support) — soporte por 3 años. Las impares son STS (Standard Term Support) — soporte por 18 meses. En producción, siempre apunto a LTS.

VersiónTipoC#Fin de soporteEstado
.NET 8LTSC# 12Nov 2026✅ En soporte
.NET 9STSC# 13May 2026⚠️ Fin pronto
.NET 10LTSC# 14Nov 2028✅ Actual recomendado

Lo más importante de cada versión en un vistazo

.NET 8 / C# 12 (noviembre 2023)

  • Primary constructors en clases y structs
  • Collection expressions: [1, 2, 3] para arrays, listas y spans
  • Spread operator .. para combinar colecciones
  • Inline arrays de alto rendimiento
  • Using aliases para cualquier tipo (incluso tuplas y punteros)
  • Lambdas con parámetros opcionales y params

.NET 9 / C# 13 (noviembre 2024)

  • params ReadOnlySpan<T>: cero asignaciones en heap para métodos variádicos
  • System.Threading.Lock: tipo de primera clase para exclusión mutua
  • Task.WhenEach: procesar tareas a medida que terminan
  • LINQ: CountBy(), AggregateBy(), Index()
  • Nuevos miembros partial en clases parciales
  • OpenAPI built-in en Minimal APIs

.NET 10 / C# 14 (noviembre 2025)

  • Palabra clave field: acceso al backing field autogenerado
  • Extension members: propiedades y miembros estáticos de extensión
  • Stack allocation inteligente para arrays pequeños
  • Native AOT mejorado: binarios más pequeños, arranque más rápido
  • dotnet run script.cs: ejecutar archivos sin proyecto
  • Mejoras profundas en el GC

¿Por qué actualizar desde .NET 8 a .NET 10 ahora?

Si estás en .NET 8 LTS, no hay urgencia — tiene soporte hasta noviembre 2026. Pero .NET 10 ofrece mejoras de rendimiento concretas que se traducen en menor uso de memoria, menor latencia y binarios más chicos. En mis APIs en producción, la migración de .NET 8 a .NET 10 redujo el uso de memoria de los pods en Kubernetes entre un 15 y un 25%.

# Verificar versión instalada
dotnet --version

# Instalar .NET 10 SDK
# Linux/WSL:
wget https://dot.net/v1/dotnet-install.sh
bash dotnet-install.sh --channel 10.0

# Ver SDKs disponibles
dotnet --list-sdks

# Cambiar un proyecto a .NET 10
# En el .csproj:
# <TargetFramework>net10.0</TargetFramework>

El contexto: .NET unificado, multiplataforma y de alto rendimiento

Desde .NET 5, Microsoft unificó el ecosistema: ya no hay .NET Framework, .NET Core y Xamarin como caminos separados. Todo es .NET. Corre en Windows, Linux, macOS, Android, iOS, WASM. Un solo SDK, una sola librería estándar, un solo modelo de deployment.

Para los que venimos del mundo de .NET Framework y ASP.NET MVC clásico, este es el contexto del que partimos. Para los que arrancaron directamente con .NET Core: la dirección es la misma, pero el ritmo de mejoras se aceleró. Esta serie cubre exactamente qué cambió y cómo aprovecharlo.


Serie .NET 8 → .NET 10 | Próximo: C# 12: Primary Constructors, Collection Expressions y el código que debería haber existido siempre →

Comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.