Instalación de .NET en Windows

En este artículo obtendrá información sobre cómo instalar .NET en Windows. .NET está formado por el entorno de ejecución y el SDK. El entorno de ejecución se usa para ejecutar una aplicación de .NET, y puede o no incluirse con la aplicación. El SDK se usa para crear aplicaciones y bibliotecas de .NET. El entorno de ejecución de .NET siempre se instala con el SDK.

La versión más reciente de .NET es 7.

Hay dos tipos de versiones admitidas, versiones de soporte técnico a largo plazo (LTS) o compatibilidad con términos estándar (STS). La calidad de todas las versiones es la misma. La única diferencia es la longitud del soporte técnico. Las versiones ltS obtienen soporte técnico gratuito y revisiones durante 3 años. Las versiones de STS obtienen soporte técnico gratuito y revisiones durante 18 meses. Para obtener más información, consulte Directiva de soporte técnico de .NET.

En la tabla siguiente se muestra el estado de compatibilidad de cada versión de .NET (y .NET Core):

✔️ Admitida ❌ No admitida
7 (STS) 5
6 (LTS) 3.0
3.1 (LTS) 2.2
2.1
2,0
1,1
1,0

Instalación con Administrador de paquetes de Windows (winget)

Puede instalar y administrar .NET a través del servicio Administrador de paquetes de Windows mediante la herramienta winget . Para obtener más información sobre cómo instalar y usar winget, consulte Uso de la herramienta winget.

Si va a instalar .NET en todo el sistema, instale con privilegios administrativos.

Instalación del SDK

El SDK de .NET permite desarrollar aplicaciones con .NET. Si instala el SDK de .NET, no es necesario instalar los entornos de ejecución correspondientes. Para instalar el SDK de .NET, ejecute el comando siguiente:

winget install Microsoft.DotNet.SDK.7

Instalación de la instancia en tiempo de ejecución

Para Windows, hay tres entornos de ejecución de .NET que puede instalar. Debe instalar el entorno de ejecución de escritorio de .NET y el entorno de ejecución de ASP.NET Core para asegurarse de que es compatible con todos los tipos de aplicaciones .NET.

  • .NET Desktop Runtime

    Este entorno de ejecución incluye el entorno de ejecución de .NET base y admite Windows Presentation Foundation (WPF) y aplicaciones de Windows Forms compiladas con .NET. Esto no es lo mismo que .NET Framework, que viene con Windows.

    winget install Microsoft.DotNet.DesktopRuntime.7
    
  • ASP.NET Core Runtime

    Este runtime incluye el entorno de ejecución de .NET base y ejecuta aplicaciones de servidor web. El entorno de ejecución de ASP.NET Core le permite ejecutar aplicaciones creadas con .NET en las que no se ha proporcionado el entorno de ejecución. Los comandos siguientes instalan el entorno de ejecución de ASP.NET Core, el más compatible con .NET. En el terminal, ejecute los comandos siguientes:

    winget install Microsoft.DotNet.AspNetCore.7
    
  • Runtime de .NET

    Este es el entorno de ejecución base y contiene solo los componentes necesarios para ejecutar una aplicación de consola. Normalmente, instalaría los demás entornos de ejecución.

    winget install Microsoft.DotNet.Runtime.7
    

Puede instalar versiones preliminares de los entornos de ejecución sustituyendo el número de versión, como 6, por la palabra Preview. En el ejemplo siguiente se instala la versión preliminar del entorno de ejecución de escritorio de .NET:

winget install Microsoft.DotNet.DesktopRuntime.Preview

Instalación junto con Visual Studio Code

Visual Studio Code es un editor de código fuente ligero y eficaz que se ejecuta en el escritorio. Visual Studio Code está disponible para Windows, macOS y Linux.

Aunque Visual Studio Code no viene con un instalador automatizado de .NET Core como Visual Studio, agregar compatibilidad con .NET Core es sencillo.

  1. Descargue e instale Visual Studio Code.
  2. Descargue e instale el SDK de .NET.
  3. Instale la extensión de C# desde el Marketplace de Visual Studio Code.

Instalación con Windows Installer

La página de descarga de .NET proporciona ejecutables de Windows Installer.

Al usar los instaladores de Windows para instalar .NET, puede personalizar la ruta de instalación estableciendo los parámetros DOTNETHOME_X64 y DOTNETHOME_X86:

dotnet-sdk-7.0.100-win-x64.exe DOTNETHOME_X64="F:\dotnet\x64" DOTNETHOME_X86="F:\dotnet\x86"

Si quiere instalar .NET de forma silenciosa, como en un entorno de producción o para admitir la integración continua, use las expresiones switch siguientes:

  • /install
    Instala .NET.

  • /quiet
    Impide que se muestren interfaces de usuario y solicitudes.

  • /norestart
    Suprime los intentos de reinicio.

dotnet-sdk-7.0.100-win-x64.exe /install /quiet /norestart

Para obtener más información, vea Opciones de la línea de comandos del instalador estándar.

Sugerencia

El instalador devuelve un código de salida 0 en caso de no detectar ningún error y un código de salida 3010 para indicar que se requiere un reinicio. Cualquier otro valor suele ser un código de error.

Instalación mediante la automatización de PowerShell

Los scripts de dotnet-install se usan para la automatización de CI y las instalaciones que no son de administrador del entorno de ejecución. Se puede descargar el script desde la página de referencia del script dotnet-install.

El valor predeterminado del script es instalar la versión más reciente de compatibilidad a largo plazo (LTS), que actualmente es .NET 6. Puede elegir una versión concreta especificando el modificador Channel. Incluya el modificador Runtime para instalar un entorno de ejecución. De lo contrario, el script instala el SDK.

El siguiente comando instala el entorno de ejecución de ASP.NET Core para la compatibilidad máxima. El entorno de ejecución de ASP.NET Core también incluye el estándar de .NET.

dotnet-install.ps1 -Channel 7.0 -Runtime aspnetcore

Instale el SDK omitiendo el modificador -Runtime. El -Channel modificador se establece en este ejemplo STSen , que instala la versión más reciente de compatibilidad con términos estándar (.NET 7).

dotnet-install.ps1 -Channel STS

Instalación con Visual Studio

Si usa Visual Studio para desarrollar aplicaciones de .NET, en la tabla siguiente se describe la versión mínima necesaria de Visual Studio, en función de la versión del SDK de .NET de destino.

Versión de SDK de .NET Versión de Visual Studio
7 Visual Studio 2022, versión 17.4 o posterior.
6 Visual Studio 2022, versión 17.0 o posterior
5 Visual Studio 2019, versión 16.8 o posterior.
3.1 Visual Studio 2019, versión 16.4 o posterior.
3.0 Visual Studio 2019, versión 16.3 o posterior.
2.2 Visual Studio 2017, versión 15.9 o posterior.
2.1 Visual Studio 2017, versión 15.7 o posterior.

Si ya tiene Visual Studio instalado, puede comprobar la versión siguiendo los pasos que se detallan a continuación.

  1. Abra Visual Studio.
  2. Seleccione Ayuda>Acerca de Microsoft Visual Studio.
  3. Lea el número de versión en el cuadro de diálogo Acerca de.

Visual Studio puede instalar el SDK y el entorno de ejecución de .NET más recientes.

Selección de una carga de trabajo

Al instalar o modificar Visual Studio, seleccione una de las cargas de trabajo siguientes o más, en función del tipo de aplicación que quiera compilar:

  • La carga de trabajo Desarrollo multiplataforma de .NET Core en la sección Otros conjuntos de herramientas.
  • La carga de trabajo Desarrollo de ASP.NET y web en la sección Web & Nube.
  • La carga de trabajo Desarrollo de Azure en la sección Web & Nube.
  • La carga de trabajo Desarrollo de escritorio de .NET en la sección Escritorio & Dispositivos móviles.

Visual Studio 2019 para Windows con la carga de trabajo de .NET Core

Versiones compatibles

En la tabla siguiente se muestra una lista de versiones de .NET actualmente compatibles y las versiones de Windows en las que se admiten. Estas versiones siguen siendo compatibles hasta que la versión de .NET llega al fin del soporte técnico o la versión de Windows llega al final del ciclo de vida.

Las fechas de fin de servicio de Windows 10 están segmentadas por edición. En la tabla que hay a continuación solo se tienen en cuenta las ediciones Home, Pro, Pro Education y Pro for Workstations. Para ver detalles específicos, consulte la hoja informativa sobre el ciclo de vida de Windows.

Sugerencia

Un símbolo + representa la versión mínima.

Sistema operativo .NET 7 .NET 6 .NET Core 3.1
Windows 11 ✔️ ✔️ ✔️
Windows Server 2022 ✔️ ✔️ ✔️
Windows Server, versión 1903 o posterior ✔️ ✔️ ✔️
Windows 10, versión 1607 o posterior ✔️ ✔️ ✔️
Windows 8.1 ✔️ ✔️
Windows 7 SP1 ESU ✔️ ✔️
Windows Server 2019
Windows Server 2016
Windows Server 2012 R2
Windows Server 2012
✔️ ✔️
Windows Server Core 2012 R2 ✔️ ✔️ ✔️
Windows Server Core 2012 ✔️ ✔️ ✔️
Nano Server, versión 1809+ ✔️ ✔️ ✔️
Nano Server, versión 1803 ✔️

Para obtener más información sobre los sistemas operativos, las distribuciones y la directiva de ciclo de vida compatibles con .NET 7, consulte Versiones de sistema operativo compatibles con .NET 7.

Versiones no admitidas

Las versiones siguientes de .NET ya ❌ no se admiten:

  • .NET 5
  • .NET Core 3.0
  • .NET Core 2.2
  • .NET Core 2.1
  • .NET Core 2.0

Información en tiempo de ejecución

El entorno de ejecución se usa para ejecutar aplicaciones creadas con .NET. Cuando un autor publica una aplicación, puede incluir el tiempo de ejecución. Si no lo hace, el usuario elige si quiere instalar el tiempo de ejecución.

Hay tres entornos de ejecución distintos que se pueden instalar en Windows:

  • Entorno de ejecución de ASP.NET Core
    Ejecuta aplicaciones de ASP.NET Core. Incluye el entorno de ejecución de .NET.

  • Entorno de ejecución de escritorio
    Ejecuta aplicaciones de escritorio WPF y Windows Forms de .NET para Windows. Incluye el entorno de ejecución de .NET.

  • Entorno de ejecución de .NET
    Este entorno de ejecución es el más sencillo y no incluye ningún otro. Se recomienda encarecidamente instalar el entorno de ejecución de ASP.NET Core y el entorno de ejecución de escritorio para conseguir la mejor compatibilidad con las aplicaciones de .NET.

Información del SDK

El SDK se usa para compilar y publicar aplicaciones y bibliotecas de .NET. La instalación del SDK incluye los tres entornos de ejecución: el de ASP.NET Core, el de escritorio y el de .NET.

Equipos Windows basados en Arm

En las secciones siguientes se describen los aspectos que debe tener en cuenta al instalar .NET en un equipo Windows basado en Arm.

Lo que se admite

En la tabla siguiente se describen las versiones de .NET que se admiten en un equipo Windows basado en Arm:

Versión de .NET Architecture SDK Tiempo de ejecución Conflicto de ruta de acceso
7 Arm64 No
7 x64 No
6 Arm64 No
6 x64 No
5 Arm64
5 x64 No
3.1 Arm64 No No N/D
3.1 x64 No

A partir de .NET 6, las versiones x64 y Arm64 del SDK de .NET existen de forma independiente entre sí. Si se publica una nueva versión, cada instalación de arquitectura debe actualizarse.

Diferencias de ruta de acceso

En un equipo Windows basado en Arm, todas las versiones de Arm64 de .NET se instalan en la carpeta normal C:\Archivos de programa\dotnet\. Sin embargo, al instalar la versión x64 del SDK de .NET 6 o el SDK de .NET 7, se instala en la carpeta C:\Archivos de programa\dotnet\x64\ .

Conflictos de ruta de acceso

A partir de .NET 6, el SDK de .NET x64 se instala en su propio directorio, como se describe en la sección anterior. Esto permite que las versiones arm64 y x64 del SDK de .NET existan en el mismo equipo. Sin embargo, no se admite ningún SDK x64 anterior a 6 e instala en la misma ubicación que la versión arm64, la carpeta C:\Archivos de programa\dotnet\ . Si quiere instalar un SDK para x64 no admitido, primero debe desinstalar la versión Arm64. Lo contrario también es cierto: deberá desinstalar el SDK para x64 no admitido para instalar la versión Arm64.

Variables de ruta de acceso

Es posible que las variables de entorno que agreguen .NET a la ruta de acceso del sistema, como la PATH variable, deba cambiarse si tiene instaladas las versiones x64 y Arm64 del SDK de .NET. Además, algunas herramientas se basan en la DOTNET_ROOT variable de entorno, que también tendría que actualizarse para que apunte a la carpeta de instalación adecuada del SDK de .NET.

Dependencias

Las siguientes versiones de Windows son compatibles con .NET 7:

Nota

Un símbolo + representa la versión mínima.

SO Versión Arquitecturas
Windows 11 21H2+ x64, Arm64
Cliente de Windows 10 1607+ x64, x86, Arm64
Cliente Windows 7 SP1 y posteriores, y 8.1 x64, x86
Windows Server 2012+ x64, x86
Windows Server Core 2012+ x64, x86
Nano Server 1809+ x64

Para obtener más información sobre los sistemas operativos, las distribuciones y la directiva de ciclo de vida compatibles con .NET 7, consulte Versiones de sistema operativo compatibles con .NET 7.

Windows 7 / Vista / 8.1 / Server 2008 R2 / Server 2012 R2

Se necesitan más dependencias en caso de que se instale el SDK o el entorno de ejecución de .NET en las versiones siguientes de Windows:

Sistema operativo Prerrequisitos
Windows 7 SP1 ESU - Microsoft Visual C++ 2015-2019 Redistributable 64 bits / 32 bits
- KB3063858 64 bits / 32 bits
- Microsoft Root Certificate Authority 2011 (solo instalador sin conexión de .NET Core 2.1)
Windows Vista SP2 Microsoft Visual C++ 2015-2019 Redistributable 64 bits / 32 bits
Windows 8.1 Microsoft Visual C++ 2015-2019 Redistributable 64 bits / 32 bits
Windows Server 2008 R2 Microsoft Visual C++ 2015-2019 Redistributable 64 bits / 32 bits
Windows Server 2012 Microsoft Visual C++ 2015-2019 Redistributable 64 bits / 32 bits
Windows Server 2012 R2 Microsoft Visual C++ 2015-2019 Redistributable 64 bits / 32 bits

Los requisitos anteriores también son necesarios si se encuentra con un error relacionado con uno de los archivos DLL siguientes:

  • api-ms-win-crt-runtime-l1-1-0.dll
  • api-ms-win-cor-timezone-l1-1-0.dll
  • hostfxr.dll

Docker

Los contenedores proporcionan una manera ligera de aislar la aplicación del resto del sistema host. Los contenedores de la misma máquina comparten solo el kernel y usan los recursos proporcionados a la aplicación.

.NET se puede ejecutar en un contenedor de Docker. Las imágenes oficiales de Docker en .NET se publican en el registro de contenedor de Microsoft (MCR) y se pueden encontrar en el repositorio de Docker Hub para Microsoft .NET. Cada repositorio contiene imágenes para diferentes combinaciones de .NET (SDK o Runtime) y del sistema operativo que puede usar.

Microsoft ofrece imágenes que se adaptan a escenarios específicos. Por ejemplo, el repositorio de ASP.NET Core proporciona imágenes que se compilan para ejecutar aplicaciones de ASP.NET Core en producción.

Para obtener más información sobre el uso de .NET en un contenedor de Docker, vea Introducción a .NET y Docker y Ejemplos.

Solución de problemas

Después de instalar el SDK de .NET, puede encontrarse con problemas al intentar ejecutar comandos de la CLI de .NET. En esta sección se recopilan esos problemas comunes y se proporcionan soluciones.

No se pudo encontrar ningún SDK de .NET Core instalado

Es probable que haya instalado las versiones x86 (32 bits) y x64 (64 bits) del SDK de .NET. Esto está causando un conflicto porque, al ejecutar el comando dotnet, se resuelve en la versión x86 cuando se debe resolver en la versión x64. Normalmente, esto se corrige ajustando la variable %PATH% para resolver primero la versión x64.

  1. Compruebe que tiene ambas versiones instaladas mediante la ejecución del comando where.exe dotnet. Al comprobarlo, debería ver una entrada para las carpetas Archivos de programa\ y Archivos de programa (x86)\. Si la carpeta Archivos de programa (x86)\ aparece primero, como en el ejemplo siguiente, es incorrecta y debe avanzar al paso siguiente.

    > where.exe dotnet
    C:\Program Files (x86)\dotnet\dotnet.exe  
    C:\Program Files\dotnet\dotnet.exe
    

    Si es correcta y Archivos de programa\ aparece primero, no tiene el problema que se trata en esta sección y debe crear una incidencia de solicitud de ayuda de .NET en GitHub

  2. Presione el botón Windows y escriba "Editar las variables de entorno del sistema" en la barra de búsqueda. Seleccione Editar las variables de entorno del sistema.

    Menú de inicio de Windows con Editar variables de entorno

  3. La ventana Propiedades del sistema se abre en la pestaña Opciones avanzadas. Seleccione Variables de entorno.

    Panel de propiedades del sistema abierto en Windows.

  4. En la ventana Variables de entorno, en el grupo Variables del sistema, seleccione la fila Path* y después seleccione el botón Editar.

    La ventana Variables de entorno con las variables de usuario y del sistema.

  5. Use los botones Subir y Bajar para poner la entrada C:\Archivos de programa\dotnet\ encima de C:\Archivos de programa (x86)\dotnet\.

    La lista de variables de entorno del sistema.

Pasos siguientes