Instalación de .NET en WindowsInstall .NET on Windows

En este artículo obtendrá información sobre cómo instalar .NET en Windows.In this article, you'll learn how to install .NET on Windows. .NET está formado por el entorno de ejecución y el SDK..NET is made up of the runtime and the SDK. El entorno de ejecución se usa para ejecutar una aplicación de .NET, y puede o no incluirse con la aplicación.The runtime is used to run a .NET app and may or may not be included with the app. El SDK se usa para crear aplicaciones y bibliotecas de .NET.The SDK is used to create .NET apps and libraries. El entorno de ejecución de .NET siempre se instala con el SDK.The .NET runtime is always installed with the SDK.

La versión más reciente de .NET es la 5.0.The latest version of .NET is 5.0.

Versiones compatiblesSupported releases

En la tabla siguiente se muestra una lista de versiones de .NET actualmente compatibles y las versiones de Windows en las que se admiten.The following table is a list of currently supported .NET releases and the versions of Windows they're supported on. 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.These versions remain supported until either the version of .NET reaches end-of-support or the version of Windows reaches end-of-life.

Las fechas de fin de servicio de Windows 10 están segmentadas por edición.Windows 10 versions end-of-service dates are segmented by edition. En la tabla que hay a continuación solo se tienen en cuenta las ediciones Home, Pro, Pro Education y Pro for Workstations.Only Home, Pro, Pro Education, and Pro for Workstations editions are considered in the following table. Para ver detalles específicos, consulte la hoja informativa sobre el ciclo de vida de Windows.Check the Windows lifecycle fact sheet for specific details.

Sugerencia

Un símbolo + representa la versión mínima.A + symbol represents the minimum version.

Sistema operativoOperating System .NET Core 2.1.NET Core 2.1 .NET Core 3.1.NET Core 3.1 .NET 5.NET 5
Windows 10 / Windows Server, versión 20H2Windows 10 / Windows Server, Version 20H2 ✔️✔️ ✔️✔️ ✔️✔️
Windows 10 / Windows Server, versión 2004Windows 10 / Windows Server, Version 2004 ✔️✔️ ✔️✔️ ✔️✔️
Windows 10 / Windows Server, versión 1909Windows 10 / Windows Server, Version 1909 ✔️✔️ ✔️✔️ ✔️✔️
Windows 10 / Windows Server, versión 1903Windows 10 / Windows Server, Version 1903 ✔️✔️ ✔️✔️ ✔️✔️
Windows 10, versión 1809Windows 10, Version 1809 ✔️✔️ ✔️✔️ ✔️✔️
Windows 10, versión 1803Windows 10, Version 1803 ✔️✔️ ✔️✔️ ✔️✔️
Windows 10, versión 1709Windows 10, Version 1709 ✔️✔️ ✔️✔️ ✔️✔️
Windows 10, versión 1607Windows 10, Version 1607 ✔️✔️ ✔️✔️ ✔️✔️
Windows 8.1Windows 8.1 ✔️✔️ ✔️✔️ ✔️✔️
Windows 7 SP1 ESUWindows 7 SP1 ESU ✔️✔️ ✔️✔️ ✔️✔️
Windows Server 2019Windows Server 2019
Windows Server 2016Windows Server 2016
Windows Server 2012 R2Windows Server 2012 R2
✔️✔️ ✔️✔️ ✔️✔️
Windows Server Core 2012 R2Windows Server Core 2012 R2 ✔️✔️ ✔️✔️ ✔️✔️
Nano Server, versión 1809+Nano Server, Version 1809+ ✔️✔️ ✔️✔️ ✔️✔️
Nano Server, versión 1803Nano Server, Version 1803 ✔️✔️ ✔️✔️

Versiones no admitidasUnsupported releases

Las versiones siguientes de .NET ya ❌ no se admiten:The following versions of .NET are ❌ no longer supported:

  • 3.03.0
  • 2.22.2
  • 2.02.0

Información en tiempo de ejecuciónRuntime information

El entorno de ejecución se usa para ejecutar aplicaciones creadas con .NET.The runtime is used to run apps created with .NET. Cuando un autor publica una aplicación, puede incluir el tiempo de ejecución.When an app author publishes an app, they can include the runtime with their app. Si no lo hace, el usuario elige si quiere instalar el tiempo de ejecución.If they don't include the runtime, it's up to the user to install the runtime.

Hay tres entornos de ejecución distintos que se pueden instalar en Windows:There are three different runtimes you can install on Windows:

  • Entorno de ejecución de ASP.NET CoreASP.NET Core runtime
    Ejecuta aplicaciones de ASP.NET Core.Runs ASP.NET Core apps. Incluye el entorno de ejecución de .NET.Includes the .NET runtime.

  • Entorno de ejecución de escritorioDesktop runtime
    Ejecuta aplicaciones de escritorio WPF y Windows Forms de .NET para Windows.Runs .NET WPF and Windows Forms desktop apps for Windows. Incluye el entorno de ejecución de .NET.Includes the .NET runtime.

  • Entorno de ejecución de .NET.NET runtime
    Este entorno de ejecución es el más sencillo y no incluye ningún otro.This runtime is the simplest runtime and doesn't include any other runtime. 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.It's highly recommended that you install both ASP.NET Core runtime and Desktop runtime for the best compatibility with .NET apps.

Información del SDKSDK information

El SDK se usa para compilar y publicar aplicaciones y bibliotecas de .NET.The SDK is used to build and publish .NET apps and libraries. La instalación del SDK incluye los tres entornos de ejecución: el de ASP.NET Core, el de escritorio y el de .NET.Installing the SDK includes all three runtimes: ASP.NET Core, Desktop, and .NET.

DependenciasDependencies

Las versiones siguientes de Windows son compatibles con .NET 5.0:The following Windows versions are supported with .NET 5.0:

Nota

Un símbolo + representa la versión mínima.A + symbol represents the minimum version.

SOOS VersiónVersion ArquitecturasArchitectures
Cliente de Windows 10Windows 10 Client Versión 1607 y posterioresVersion 1607+ x64, x86, ARM64x64, x86, ARM64
Cliente WindowsWindows Client 7 SP1 y posteriores, y 8.17 SP1+, 8.1 x64, x86x64, x86
Windows ServerWindows Server 2012 R2 y posteriores2012 R2+ x64, x86x64, x86
Windows Server CoreWindows Server Core 2012 R2 y posteriores2012 R2+ x64, x86x64, x86
Nano ServerNano Server Versión 1809 y posterioresVersion 1809+ x64x64

Para obtener más información sobre los sistemas operativos compatibles con .NET 5.0, las distribuciones y la directiva del ciclo de vida, vea Versiones de SO compatibles con .NET 5.0.For more information about .NET 5.0 supported operating systems, distributions, and lifecycle policy, see .NET 5.0 Supported OS Versions.

Windows 7 / Vista / 8.1 / Server 2008 R2 / Server 2012 R2Windows 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:More dependencies are required if you're installing the .NET SDK or runtime on the following Windows versions:

Sistema operativoOperating System PrerrequisitosPrerequisites
Windows 7 SP1 ESUWindows 7 SP1 ESU - Microsoft Visual C++ 2015-2019 Redistributable 64 bits / 32 bits- Microsoft Visual C++ 2015-2019 Redistributable 64-bit / 32-bit
- KB3063858 64 bits / 32 bits- KB3063858 64-bit / 32-bit
- Microsoft Root Certificate Authority 2011 (solo instalador sin conexión de .NET Core 2.1)- Microsoft Root Certificate Authority 2011 (.NET Core 2.1 offline installer only)
Windows Vista SP2Windows Vista SP 2 Microsoft Visual C++ 2015-2019 Redistributable 64 bits / 32 bitsMicrosoft Visual C++ 2015-2019 Redistributable 64-bit / 32-bit
Windows 8.1Windows 8.1 Microsoft Visual C++ 2015-2019 Redistributable 64 bits / 32 bitsMicrosoft Visual C++ 2015-2019 Redistributable 64-bit / 32-bit
Windows Server 2008 R2Windows Server 2008 R2 Microsoft Visual C++ 2015-2019 Redistributable 64 bits / 32 bitsMicrosoft Visual C++ 2015-2019 Redistributable 64-bit / 32-bit
Windows Server 2012 R2Windows Server 2012 R2 Microsoft Visual C++ 2015-2019 Redistributable 64 bits / 32 bitsMicrosoft Visual C++ 2015-2019 Redistributable 64-bit / 32-bit

Los requisitos anteriores también son necesarios si se encuentra con un error relacionado con uno de los archivos DLL siguientes:The previous requirements are also required if you receive an error related to either of the following dlls:

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

Instalación mediante la automatización de PowerShellInstall with PowerShell automation

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.The dotnet-install scripts are used for CI automation and non-admin installs of the runtime. Se puede descargar el script desde la página de referencia del script dotnet-install.You can download the script from the dotnet-install script reference page.

El valor predeterminado del script es instalar la versión más reciente de soporte técnico a largo plazo (LTS), que actualmente es .NET Core 3.1.The script defaults to installing the latest long term support (LTS) version, which is .NET Core 3.1. Puede elegir una versión concreta especificando el modificador Channel.You can choose a specific release by specifying the Channel switch. Incluya el modificador Runtime para instalar un entorno de ejecución.Include the Runtime switch to install a runtime. De lo contrario, el script instala el SDK.Otherwise, the script installs the SDK.

dotnet-install.ps1 -Channel 5.0 -Runtime aspnetcore

Instale el SDK omitiendo el modificador -Runtime.Install the SDK by omitting the -Runtime switch. El modificador -Channel de este ejemplo está establecido en Current, con lo que se instala la versión admitida más reciente.The -Channel switch is set in this example to Current, which installs the latest supported version.

dotnet-install.ps1 -Channel Current

Instalación con Visual StudioInstall with 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.If you're using Visual Studio to develop .NET apps, the following table describes the minimum required version of Visual Studio based on the target .NET SDK version.

Versión de SDK de .NET.NET SDK version Versión de Visual StudioVisual Studio version
5.05.0 Visual Studio 2019, versión 16.8 o posterior.Visual Studio 2019 version 16.8 or higher.
3.13.1 Visual Studio 2019, versión 16.4 o posterior.Visual Studio 2019 version 16.4 or higher.
3.03.0 Visual Studio 2019, versión 16.3 o posterior.Visual Studio 2019 version 16.3 or higher.
2.22.2 Visual Studio 2017, versión 15.9 o posterior.Visual Studio 2017 version 15.9 or higher.
2.12.1 Visual Studio 2017, versión 15.7 o posterior.Visual Studio 2017 version 15.7 or higher.

Si ya tiene Visual Studio instalado, puede comprobar la versión siguiendo los pasos que se detallan a continuación.If you already have Visual Studio installed, you can check your version with the following steps.

  1. Abra Visual Studio.Open Visual Studio.
  2. Seleccione Ayuda > Acerca de Microsoft Visual Studio.Select Help > About Microsoft Visual Studio.
  3. Lea el número de versión en el cuadro de diálogo Acerca de.Read the version number from the About dialog.

Visual Studio puede instalar el SDK y el entorno de ejecución de .NET más recientes.Visual Studio can install the latest .NET SDK and runtime.

Selección de una carga de trabajoSelect a workload

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:When installing or modifying Visual Studio, select one or more of the following workloads, depending on the kind of application you're building:

  • La carga de trabajo Desarrollo multiplataforma de .NET Core en la sección Otros conjuntos de herramientas.The .NET Core cross-platform development workload in the Other Toolsets section.
  • La carga de trabajo Desarrollo de ASP.NET y web en la sección Web y nube.The ASP.NET and web development workload in the Web & Cloud section.
  • La carga de trabajo Desarrollo de Azure en la sección Web y nube.The Azure development workload in the Web & Cloud section.
  • La carga de trabajo Desarrollo de escritorio de .NET en la sección Móviles y de escritorio.The .NET desktop development workload in the Desktop & Mobile section.

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

Instalación junto con Visual Studio CodeInstall alongside 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 is a powerful and lightweight source code editor that runs on your desktop. Visual Studio Code está disponible para Windows, macOS y Linux.Visual Studio Code is available for Windows, macOS, and Linux.

Aunque Visual Studio Code no viene con un instalador automatizado de .NET Core como Visual Studio, agregar compatibilidad con .NET Core es sencillo.While Visual Studio Code doesn't come with an automated .NET Core installer like Visual Studio does, adding .NET Core support is simple.

  1. Descargue e instale Visual Studio Code.Download and install Visual Studio Code.
  2. Descargue e instale el SDK de .NET Core.Download and install the .NET Core SDK.
  3. Instale la extensión de C# desde el Marketplace de Visual Studio Code.Install the C# extension from the Visual Studio Code marketplace.

Windows InstallerWindows Installer

La página de descarga de .NET proporciona ejecutables de Windows Installer.The download page for .NET provides Windows Installer executables.

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:When you use the Windows installers to install .NET, you can customize the installation path by setting the DOTNETHOME_X64 and DOTNETHOME_X86 parameters:

dotnet-sdk-3.1.301-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:If you want to install .NET silently, such as in a production environment or to support continuous integration, use the following switches:

  • /install
    Instala .NET.Installs .NET.

  • /quiet
    Impide que se muestren interfaces de usuario y solicitudes.Prevents any UI and prompts from displaying.

  • norestart
    Suprime los intentos de reinicio.Suppresses any attempts to restart.

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

Para obtener más información, vea Opciones de la línea de comandos del instalador estándar.For more information, see Standard Installer Command-Line Options.

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.The installer returns an exit code of 0 for success and an exit code of 3010 to indicate that a restart is required. Cualquier otro valor suele ser un código de error.Any other value is generally an error code.

Descarga e instalación de forma manualDownload and manually install

Como alternativa a los instaladores de Windows para .NET, puede descargar e instalar manualmente el SDK o el entorno de ejecución.As an alternative to the Windows installers for .NET, you can download and manually install the SDK or runtime. La instalación manual se suele realizar durante las pruebas de integración continua.Manual install is usually done as part of continuous integration testing. Para un desarrollador o usuario, generalmente es mejor usar un instalador.For a developer or user, it's generally better to use an installer.

Tanto el SDK como el entorno de ejecución de .NET se pueden instalar manualmente una vez que se han descargado.Both .NET SDK and .NET Runtime can be manually installed after they've been downloaded. Si instala el SDK de .NET, no necesita instalar el entorno de ejecución correspondiente.If you install .NET SDK, you don't need to install the corresponding runtime. En primer lugar, descargue una versión binaria del SDK o del entorno de ejecución de uno de los siguientes sitios:First, download a binary release for either the SDK or the runtime from one of the following sites:

Cree un directorio en el que se extraerá .NET; por ejemplo, %USERPROFILE%\dotnet.Create a directory to extract .NET to, for example %USERPROFILE%\dotnet. Después, extraiga el archivo ZIP descargado en ese directorio.Then, extract the downloaded zip file into that directory.

De forma predeterminada, los comandos y las aplicaciones de la CLI de .NET no usarán la versión de .NET instalada de esta manera y debe elegir explícitamente usarla.By default, .NET CLI commands and apps won't use .NET installed in this way and you must explicitly choose to use it. Para ello, cambie las variables de entorno con las que se inicia una aplicación:To do so, change the environment variables with which an application is started:

set DOTNET_ROOT=%USERPROFILE%\dotnet
set PATH=%USERPROFILE%\dotnet;%PATH%
set DOTNET_MULTILEVEL_LOOKUP=0

Este enfoque permite instalar varias versiones en ubicaciones independientes y elegir explícitamente qué ubicación de instalación debe usar una aplicación mediante la ejecución de la aplicación con variables de entorno que apuntan a esa ubicación.This approach lets you install multiple versions into separate locations, then explicitly choose which install location an application should use by running the application with environment variables pointing at that location.

Cuando DOTNET_MULTILEVEL_LOOKUP se establece en 0, .NET ignora cualquier versión de .NET instalada de forma global.When DOTNET_MULTILEVEL_LOOKUP is set to 0, .NET ignores any globally installed .NET version. Elimine esa configuración de entorno para que .NET tenga en cuenta la ubicación de instalación global predeterminada al seleccionar el mejor marco para ejecutar la aplicación.Remove that environment setting to let .NET consider the default global install location when selecting the best framework for running the application. La ubicación predeterminada suele ser C:\Program Files\dotnet, en la que los instaladores instalan .NET.The default is typically C:\Program Files\dotnet, which is where the installers install .NET.

DockerDocker

Los contenedores proporcionan una manera ligera de aislar la aplicación del resto del sistema host.Containers provide a lightweight way to isolate your application from the rest of the host system. Los contenedores de la misma máquina comparten solo el kernel y usan los recursos proporcionados a la aplicación.Containers on the same machine share just the kernel and use resources given to your application.

.NET se puede ejecutar en un contenedor de Docker..NET can run in a Docker container. 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.Official .NET Docker images are published to the Microsoft Container Registry (MCR) and are discoverable at the Microsoft .NET Docker Hub repository. Cada repositorio contiene imágenes para diferentes combinaciones de .NET (SDK o Runtime) y del sistema operativo que puede usar.Each repository contains images for different combinations of the .NET (SDK or Runtime) and OS that you can use.

Microsoft ofrece imágenes que se adaptan a escenarios específicos.Microsoft provides images that are tailored for specific scenarios. Por ejemplo, el repositorio de ASP.NET Core proporciona imágenes que se compilan para ejecutar aplicaciones de ASP.NET Core en producción.For example, the ASP.NET Core repository provides images that are built for running ASP.NET Core apps in production.

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.For more information about using .NET in a Docker container, see Introduction to .NET and Docker and Samples.

Pasos siguientesNext steps