Este artigo ensina a você quais versões do .NET são compatíveis com o Windows, como instalar o .NET e qual é a diferença entre o SDK e o tempo de execução.
Ao contrário do .NET Framework, o .NET não está vinculado à sua versão do Windows. Você só pode ter uma única versão do .NET Framework instalada no Windows. Mas o .NET é autônomo e pode ser instalado em qualquer lugar do seu computador. Alguns aplicativos podem incluir sua própria cópia do .NET.
Por padrão, o .NET é instalado no diretório Program Files\dotnet em seu computador, a menos que o método de instalação escolha um diretório diferente.
O .NET é composto pelo runtime e pelo SDK. O runtime executa aplicativos .NET e o SDK é usado para criar aplicativos.
Escolha o runtime correto
Há três runtimes diferentes para o Windows, que permitem a execução de diferentes tipos de aplicativos. O SDK inclui todos os três runtimes e um instalador para um runtime pode incluir um runtime adicional. A tabela a seguir descreve qual runtime está incluído em um instalador .NET específico:
Instalador
Inclui o Runtime do .NET
Inclui o Runtime do .NET Desktop
Inclui o Runtime do ASP.NET Core
Runtime do .NET
Sim
Não
Não
Runtime do .NET Desktop
Sim
Sim
Não
Runtime do ASP.NET Core
Não
No
Sim
SDK .NET
Sim
Sim
Yes
Para garantir que você possa executar todos os aplicativos .NET no Windows, instale o Runtime do ASP.NET Core e o Runtime do .NET Desktop. O ASP.NET Core Runtime executa aplicativos baseados na Web e o .NET Desktop Runtime executa aplicativos da área de trabalho, como um aplicativo Windows Presentation Foundation (WPF) ou Windows Forms.
Escolha como instalar o .NET
Há diferentes maneiras de instalar o .NET e alguns produtos podem gerenciar sua própria versão do .NET. Se você instalar o .NET por meio de um software que gerencia sua própria versão do .NET, ele poderá não estar habilitado em todo o sistema. Certifique-se de que você entenda as implicações da instalação do .NET por meio de outro software.
Se você não tiver certeza de qual método deve escolher depois de examinar as listas nas seções a seguir, provavelmente deseja usar o Instalador do.NET.
Use o Visual Studio para instalar o .NET quando quiser desenvolver aplicativos .NET usando o Visual Studio. O Visual Studio gerencia sua própria cópia do .NET. Esse método instala os modelos do SDK, do Runtime e do Visual Studio.
Instale a extensão do Kit de Desenvolvimento do C# para Visual Studio Code para desenvolver aplicativos .NET. A extensão pode usar um SDK que já esteja instalado ou instalar um para você.
Instale o .NET com um pacote do Windows Installer, que é um executável. Esse método pode instalar o SDK e o Runtime. As instalações são executadas em todo o sistema.
Use o WinGet para instalar o .NET quando desejar gerenciar o .NET por meio da linha de comando. Esse método pode instalar o SDK e o Runtime. As instalações são executadas em todo o sistema.
Um script do PowerShell que pode automatizar a instalação do SDK ou do Runtime. Você pode escolher qual versão do .NET instalar.
Versões suportadas
A tabela a seguir é uma lista de versões .NET atualmente com suporte e as versões do Windows nas quais elas têm suporte. Essas versões permanecerão com suporte até que a versão do .NET atinja o fim do suporte ou a versão do Windows atinja o fim da vida útil.
Dica
Como lembrete, essa tabela se aplica ao .NET moderno (em oposição ao .NET Framework). Para instalar o .NET Framework, consulte o guia de instalação do. NET Framework.
Windows 10 datas de fim de serviço de versões são segmentadas por edição. Somente as edições Home, Pro, Pro Education e Pro for Workstations são consideradas na tabela a seguir. Verifique a folha de fatos do ciclo de vida do Windows para obter detalhes específicos.
Sistema operacional
.NET 9 (Arquiteturas)
.NET 8 (Arquiteturas)
Windows 11 (24H2, 23H2, 22H2 Ent/Edu)
✔️ x64, x86, Arm64
✔️ x64, x86, Arm64
Windows 10 (22H2+)
✔️ x64, x86, Arm64
✔️ x64, x86, Arm64
Windows Server 2025 Windows Server 2022 Windows Server 2019 Windows Server, versão 1903 ou posterior Windows Server 2016 Windows Server 2012 R2 Windows Server 2012
Não há mais uma versão do .NET com suporte no Windows 7 e no Windows 8.1. As últimas versões com suporte foram o .NET 6 e o suporte terminou em 12 de novembro de 2024.
O Windows Server 2012 ainda tem suporte para qualquer versão do .NET que ainda tenha suporte.
Todas essas três versões do Windows exigem que mais dependências sejam instaladas:
Microsoft Visual C++ 2015-2019 redistribuível 64-bit / 32-bit
Windows Server 2012
Microsoft Visual C++ 2015-2019 redistribuível 64-bit / 32-bit
Windows Server 2012 R2
Microsoft Visual C++ 2015-2019 redistribuível 64-bit / 32-bit
Os requisitos anteriores também serão necessários se você receber um erro relacionado a qualquer uma das seguintes dlls:
api-ms-win-crt-runtime-l1-1-0.dll
api-ms-win-cor-timezone-l1-1-0.dll
hostfxr.dll
Computadores Windows baseados em Arm
O .NET tem suporte em computadores Windows baseados em Arm. As seções a seguir descrevem coisas que você deve considerar ao instalar o .NET.
Diferenças de caminho
Em um computador Windows baseado em Arm, todas as versões do Arm64 do .NET são instaladas na pasta C:\Program Files\dotnet\ normal. No entanto, a versão x64 do SDK do .NET é instalada na pasta C:\Arquivos de Programas\dotnet\x64\.
Variáveis de caminho
Variáveis de ambiente que adicionam .NET ao caminho do sistema, como a variável PATH, talvez precisem ser alteradas se você tiver as versões x64 e Arm64 do SDK do .NET instaladas. Além disso, algumas ferramentas dependem da variável de ambiente DOTNET_ROOT, que também precisaria ser atualizada para apontar para a pasta de instalação apropriada do SDK do .NET 6.
Instalar com o Visual Studio
O Visual Studio instala sua própria cópia do .NET separada de outras cópias do .NET. Diferentes versões do Visual Studio dão suporte a diferentes versões do .NET. A versão mais recente do Visual Studio sempre dá suporte à versão mais recente do .NET.
O Instalador do Visual Studio instala e configura o Visual Studio. Algumas cargas de trabalho do Visual Studio incluem .NET, como ASP.NET e desenvolvimento para Web e desenvolvimento de interface do usuário de aplicativo multiplataforma do .NET. Versões específicas do .NET podem ser instaladas por meio da guia Componentes Individuais.
A documentação do Visual Studio fornece instruções sobre como:
Se você estiver usando o Visual Studio para desenvolver aplicativos .NET, a tabela a seguir descreverá a versão mínima necessária do Visual Studio com base na versão de destino do SDK do .NET.
Versão do SDK do .NET
Versão do Visual Studio
9
Visual Studio 2022 versão 17.12 ou superior.
8
Visual Studio 2022 versão 17.8 ou superior.
7
Visual Studio 2022 versão 17.4 ou superior.
6
Visual Studio 2022 versão 17.0 ou superior.
5
Visual Studio 2019 versão 16.8 ou superior.
3.1
Visual Studio 2019 versão 16.4 ou superior.
3,0
Visual Studio 2019 versão 16.3 ou superior.
2,2
Visual Studio 2017 versão 15.9 ou superior.
2.1
Visual Studio 2017 versão 15.7 ou superior.
Se você já tiver o Visual Studio instalado, poderá verificar sua versão com as etapas a seguir.
Abra o Visual Studio.
Selecione Ajuda>sobre o Microsoft Visual Studio.
Leia o número da versão da caixa de diálogo Sobre .
Visual Studio Code é um editor de código-fonte leve e avançado que é executado em sua área de trabalho. O Visual Studio Code pode usar o SDK já instalado em seu sistema. Além disso, a extensão do Kit de Desenvolvimento do C# instalará o .NET para você se ainda não estiver instalado.
Para obter instruções sobre como instalar o .NET por meio do Visual Studio Code, consulte Introdução ao C# no VS Code.
Selecione a versão do .NET que você deseja baixar, como 9.0.
Localize o SDK ou a caixa Runtime que contém os links para baixar o .NET.
Na coluna Instaladores, localize a linha do Windows e selecione o link para sua arquitetura de CPU. Se você não tiver certeza, selecione x64, pois é o mais comum.
O navegador deve baixar automaticamente o instalador.
Dica
A imagem a seguir mostra o SDK, mas você também pode baixar o Runtime.
Abra o Windows Explorer e navegue até onde o arquivo foi baixado, provavelmente sua pasta Downloads .
Clique duas vezes no arquivo para instalar o .NET.
A caixa de diálogo Windows Installer é aberta.
Selecione Instalar e siga as instruções para instalar o .NET.
O instalador retorna um código de saída 0 em caso de sucesso e um código de saída de 3010 para indicar que uma reinicialização é necessária. Qualquer outro valor provavelmente é um código de erro.
Microsoft Update
Os executáveis do instalador do .NET são produtos independentes que podem ser atendidos usando o Microsoft Update (MU) no Windows. O MU é diferente do Windows Update (WU), que é usado para atender componentes do sistema operacional, como o .NET Framework.
As correções de segurança e não segurança para versões com suporte do .NET são fornecidas por meio do MU usando vários canais de distribuição. As Atualizações Automáticas (AU) são relevantes para usuários finais e consumidores, enquanto o Windows Server Update Services (WSUS) e o Catálogo do Windows Update são relevantes para administradores de TI.
Os executáveis do instalador do .NET dão suporte a instalações lado a lado (SxS) em versões principais e secundárias para diferentes arquiteturas e componentes, como o runtime e o SDK. Por exemplo, você pode instalar o runtime 6.0.15 (x64) e 6.0.17 (x86). Quando o MU for acionado, ele oferecerá o instalador mais recente para ambas as instalações.
Bloquear atualizações
Embora a maioria dos usuários prefira se manter atualizada, é possível bloquear as atualizações do .NET usando as chaves do Registro na tabela a seguir.
Versão do .NET
Chave do Registro
Nome
Tipo
Valor
Tudo
HKLM \ SOFTWARE \ Microsoft \ .NET
BlockMU
REG_DWORD
0x00000001
.NET 9
HKLM \ SOFTWARE \ Microsoft \ .NET \ 9.0
BlockMU
REG_DWORD
0x00000001
.NET 8
HKLM\SOFTWARE\Microsoft\.NET\8.0
BlockMU
REG_DWORD
0x00000001
.NET 7
HKLM \ SOFTWARE \ Microsoft \ .NET \ 7.0
BlockMU
REG_DWORD
0x00000001
.NET 6
HKLM\SOFTWARE\Microsoft\.NET\6.0
BlockMU
REG_DWORD
0x00000001
.NET 5
HKLM \ SOFTWARE \ Microsoft \ .NET \ 5.0
BlockMU
REG_DWORD
0x00000001
.NET Core 3.1
HKLM \ SOFTWARE \ Microsoft \ .NET \ 3.1
BlockMU
REG_DWORD
0x00000001
.NET Core 2.1
HKLM\SOFTWARE\Microsoft\.NET\2.1
BlockMU
REG_DWORD
0x00000001
Atualizações automáticas para o sistema operacional do servidor
As atualizações para sistemas operacionais de servidor são compatíveis com o WSUS e o Catálogo do Microsoft Update, mas não com o AU. Os sistemas operacionais de servidor podem optar por receber atualizações por meio do AU usando as seguintes chaves do Registro.
Versão do .NET
Chave do Registro
Nome
Tipo
Valor
Tudo
HKLM \ SOFTWARE \ Microsoft \ .NET
AllowAUOnServerOS
REG_DWORD
0x00000001
.NET 9
HKLM \ SOFTWARE \ Microsoft \ .NET \ 9.0
AllowAUOnServerOS
REG_DWORD
0x00000001
.NET 8
HKLM\SOFTWARE\Microsoft\.NET\8.0
AllowAUOnServerOS
REG_DWORD
0x00000001
.NET 7
HKLM \ SOFTWARE \ Microsoft \ .NET \ 7.0
AllowAUOnServerOS
REG_DWORD
0x00000001
.NET 6
HKLM\SOFTWARE\Microsoft\.NET\6.0
AllowAUOnServerOS
REG_DWORD
0x00000001
.NET 5
HKLM \ SOFTWARE \ Microsoft \ .NET \ 5.0
AllowAUOnServerOS
REG_DWORD
0x00000001
.NET Core 3.1
HKLM \ SOFTWARE \ Microsoft \ .NET \ 3.1
AllowAUOnServerOS
REG_DWORD
0x00000001
Escolha quando as versões anteriores são removidas
Os executáveis do instalador sempre instalam o novo conteúdo antes de remover a instalação anterior. Os aplicativos em execução podem ser interrompidos ou travar quando os tempos de execução mais antigos são removidos. Para minimizar o impacto da atualização do .NET, você pode especificar quando uma instalação anterior do .NET deve ser removida usando uma chave do Registro.
Versão do .NET
Chave do Registro
Nome
Tipo
Valor
Tudo
HKLM \ SOFTWARE \ Microsoft \ .NET
RemovePreviousVersion
REG_SZ
always, never ou nextSession
.NET 9
HKLM \ SOFTWARE \ Microsoft \ .NET \ 9.0
RemovePreviousVersion
REG_SZ
always, never ou nextSession
.NET 8
HKLM\SOFTWARE\Microsoft\.NET\8.0
RemovePreviousVersion
REG_SZ
always, never ou nextSession
never retém instalações anteriores e requer intervenção manual para remover instalações anteriores do .NET.
always remove instalações anteriores após a instalação da nova versão. Esse é o comportamento padrão no .NET.
nextSession adia a remoção até a próxima sessão de logon dos membros do grupo Administradores.
Os valores não diferenciam maiúsculas de minúsculas e os valores inválidos são padronizados para always.
Quando a remoção é adiada, o instalador grava um comando na chave do Registro RunOnce para desinstalar a versão anterior. O comando só será executado se um usuário no grupo Administradores fizer logon na máquina.
Observação
Esse recurso só está disponível no .NET 8 (8.0.11), 9 e versões posteriores do .NET. Ele se aplica apenas aos executáveis do instalador autônomo e afeta distribuições como o WinGet que os usam.
Instalar com o Gerenciador de Pacotes do Windows (WinGet)
Você pode instalar e gerenciar o .NET por meio do serviço de Gerenciador de Pacotes do Windows, usando a ferramenta winget.exe. Para obter mais informações sobre como instalar e usar o WinGet, consulte Usar a ferramenta winget para instalar e gerenciar aplicativos.
Se você estiver instalando o .NET em todo o sistema, instale com privilégios administrativos.
Os pacotes WinGet do .NET são:
Microsoft.DotNet.Runtime.9—Tempo de execução do .NET 9.0
Use o comando winget search para pesquisar versões diferentes do pacote que você deseja instalar. Por exemplo, o comando a seguir pesquisa todos os SDKs do .NET disponíveis por meio do WinGet:
winget search Microsoft.DotNet.SDK
Os resultados da pesquisa são impressos em uma tabela com cada identificador de pacote.
Name Id Version Source
----------------------------------------------------------------------------------------------
Microsoft .NET SDK 9.0 Microsoft.DotNet.SDK.9 9.0.100 winget
Microsoft .NET SDK 8.0 Microsoft.DotNet.SDK.8 8.0.300 winget
Microsoft .NET SDK 7.0 Microsoft.DotNet.SDK.7 7.0.409 winget
Microsoft .NET SDK 6.0 Microsoft.DotNet.SDK.6 6.0.422 winget
Microsoft .NET SDK 5.0 Microsoft.DotNet.SDK.5 5.0.408 winget
Microsoft .NET SDK 3.1 Microsoft.DotNet.SDK.3_1 3.1.426 winget
Instalar versões prévias
Se uma versão prévia estiver disponível, substitua o número da versão no Id pela palavra Preview. O exemplo a seguir instala a versão prévia do Runtime da Área de Trabalho do .NET:
A instalação do .NET por meio do script dotnet-install do PowerShell é recomendada para instalações de integração contínua e não administrador. Se você estiver instalando o .NET para uso normal em seu sistema, use os métodos de instalação do Instalador do .NET ou do Gerenciador de Pacotes do Windows.
O script usa como padrão a instalação da versão LTS (suporte de longo prazo) mais recente, que é o .NET 8. Você pode escolher uma versão específica definindo a opção -Channel . Inclua a opção -Runtime para instalar um runtime. Caso contrário, o script instala o SDK. O script está disponível em https://dot.net/v1/dotnet-install.ps1 e o código-fonte está hospedado no GitHub.
Depois de fazer o download de um instalador ou de uma versão binária, verifique se o arquivo não foi alterado ou corrompido. Você pode obter a soma de verificação no computador e depois compará-la com o que foi relatado no site de download.
Quando você baixa o arquivo de uma página oficial de download, a soma de verificação do arquivo é exibida em uma caixa de texto. Selecione o botão Copiar a fim de copiar o valor de soma de verificação para a área de transferência.
Você pode usar o PowerShell ou o prompt de comando para validar a soma de verificação do arquivo baixado. Por exemplo, o seguinte comando relata a soma de verificação do arquivo dotnet-sdk-8.0.100-win-x64.exe:
Compare a soma de verificação com o valor fornecido pelo site de download.
Usar o PowerShell e um arquivo de soma de verificação para validação
As notas sobre a versão do .NET contêm um link para um arquivo de soma de verificação que você pode usar para validar o arquivo baixado. As seguintes etapas descrevem como baixar o arquivo de soma de verificação e validar um binário de instalação do .NET:
A página de notas sobre a versão do .NET 8 no GitHub em https://github.com/dotnet/core/tree/main/release-notes/8.0 contém uma seção chamada Versões. A tabela nessa seção está vinculada aos arquivos de soma de verificação e downloads de cada versão do .NET 8:
Selecione o link da versão do .NET que você baixou. A seção anterior usou o SDK do .NET 8.0.100, que está na versão 8.0.0 do .NET.
Dica
Se você não sabe qual versão do .NET contém o arquivo de soma de verificação, explore os links até encontrá-lo.
Na página de lançamento, você pode ver a versão do Runtime do .NET e do SDK do .NET e um link para o arquivo de soma de verificação:
Copie o link do arquivo de soma de verificação.
Use o script a seguir, mas substitua o link para baixar o arquivo de soma de verificação apropriado:
Com o arquivo de soma de verificação e o arquivo de versão do .NET baixados no mesmo diretório, pesquise no arquivo de soma de verificação a soma de verificação do download do .NET:
Quando a validação for aprovada, você verá True impresso:
Se False for impresso, o arquivo baixado não será válido e não deverá ser usado.
Solução de problemas
Depois de instalar o SDK do .NET, você pode ter problemas ao tentar executar comandos da CLI do .NET. Esta seção coleta esses problemas comuns e fornece soluções.
Provavelmente, você instalou as versões x86 (32 bits) e x64 (64 bits) do SDK do .NET. Isso está causando um conflito porque quando você executa o comando dotnet, ele está resolvendo para a versão x86 quando ele deve ser resolvido para a versão x64. Esse problema é corrigido ajustando a variável %PATH% para resolver a versão x64 primeiro.
Verifique se você tem as duas versões instaladas executando o comando where.exe dotnet. Se tiver, você deverá ver uma entrada para as pastas Arquivos de Programas e Arquivos de Programas (x86)\ . Se a pasta Arquivos de Programas (x86)\ for a primeira, conforme mostrado no exemplo a seguir, ela estará incorreta e você deverá continuar para a próxima etapa.
Se estiver correto e os Arquivos de Programas\ estiverem em primeiro lugar, você não terá o problema que esta seção está discutindo e você deve criar um problema de solicitação de ajuda do .NET no GitHub
Pressione o botão do Windows e digite "Editar as variáveis de ambiente do sistema" na pesquisa. Selecione Editar as variáveis de ambiente do sistema.
A janela Propriedades do Sistema é aberta para a guia Avançado. Selecione Variáveis de Ambiente.
Na janela Variáveis de Ambiente, no grupo variáveis do sistema , selecione a linha Caminho* e, em seguida, o botão Editar .
Use os botões Mover para cima e mover para baixo para mover a entrada C:\Arquivos de Programas\dotnet\ acima de C:\Arquivos de Programas (x86)\dotnet\.
A criação de aplicativos está mais lenta do que o esperado
Verifique se o Controle de Aplicativo Inteligente, um recurso do Windows, está desativado. Não é recomendável habilitar o Controle de Aplicativo Inteligente em computadores usados para desenvolvimento. Qualquer configuração diferente de "off" pode impactar negativamente o desempenho do Visual Studio.
hostfxr.dll / api-ms-win-crt-runtime-l1-1-0.dll / api-ms-win-cor-timezone-l1-1-0.dll está ausente
Instale o Microsoft Visual C++ 2015-2019 Redistribuível (64 bits ou 32 bits).
A fonte deste conteúdo pode ser encontrada no GitHub, onde você também pode criar e revisar problemas e solicitações de pull. Para obter mais informações, confira o nosso guia para colaboradores.
Comentários do .NET
O .NET é um projeto código aberto. Selecione um link para fornecer comentários:
O .NET é uma plataforma de desenvolvedor gratuita, multiplataforma e de software livre para a criação de muitos diferentes tipos de aplicativos. Com o .NET, você pode usar várias linguagens, editores e bibliotecas para criação para Web, dispositivo móvel, desktop, jogos e IoT.