Durante a última edição do Microsoft Build, o gerente de programa do .NET, Scott Hunter, publicou um artigo afirmando que o .NET Core é o futuro do .NET.
No ano passado, a Microsoft já havia indicado, em uma palestra na conferência Visual Studio Live, que o framework .NET seria descontinuado, sendo substituído pelo .NET Core. O anúncio inicial do .NET Core como stack de desenvolvimento open source aconteceu em 2014, mas o primeiro grande lançamento do .NET Core seria anunciado somente em meados de 2016, juntamente com versões correspondentes do ASP .NET Core e do Entity Framework Core. Abrir o código do .NET Core foi uma iniciativa que lançou as bases para uma plataforma .NET multiplataforma e para a construção de um ecossistema mais forte.
A primeira versão principal do .NET Core foi focada em aplicações web e em microsserviços de alto desempenho. Um ano depois, com o anúncio da versão 2.0, vários componentes e APIs foram adicionados, para facilitar a migração de aplicativos web para o .NET Core. O InfoQ discutiu o lançamento do .NET Core 2.0 e o seu futuro, com desenvolvedores veteranos da comunidade. As principais vantagens apontadas foram o reconhecimento do .NET Core como plataforma estável, pronta para o desenvolvimento de novos aplicativos, além de benefícios de desempenho significativos em relação ao .NET Framework. Jeff Amons, um dos desenvolvedores da plataforma, apontou como um dos pontos fortes do .NET Core sua arquitetura voltada ao servidor:
Originalmente, o .NET era otimizado para um usuário, em um computador Windows. [...] O .NET Core deu à Microsoft a oportunidade de redefinir suas bases para um modelo centrado no servidor.
O destaque do .NET Core 3.0, porém, foi o suporte a aplicativos desktop no Windows, com foco em Windows Forms, Windows Presentation Framework (WPF) e UWP XAML. Na época desta versão, o .NET Standard foi posicionado como base comum para o Windows Desktop Apps e o .NET Core. Além disso, o .NET Core foi apresentado como parte de uma composição contendo o ASP.NET Core, o Entity Framework Core e o ML.NET. O suporte ao desenvolvimento e ao porte de aplicativos desktop do Windows para o .NET Core seria fornecido pelos "Windows Desktop Packs" (componentes adicionais para plataformas Windows).
O artigo de Hunter foi publicado em conjunto com o anúncio do .NET 5 como ".NET Core vNext", a próxima versão após o .NET Core 3.0. Aqui a Microsoft posicionou o .NET 5 como plataforma unificadora para aplicativos e tecnologias desktop, web, em nuvem, IoT e mobile, além de para jogos e inteligência artificial - com integração explícita a todas as edições do Visual Studio e também à interface de linha de comandos (CLI). O objetivo da nova versão .NET é produzir um único runtime multiplataforma do .NET, integrando os melhores recursos das tecnologias .NET Core, .NET Framework, Xamarin e Mono (a implementação multi-plataforma original do .NET). O .NET 5 também oferece interoperabilidade com Java em todas as plataformas, bem como interoperabilidade com Objective-C e Swift.
Alguns membros da comunidade reagiram ao lançamento do .NET 5 com ceticismo quanto a questões de marca e compatibilidade com versões anteriores. Por exemplo, o usuário "lol768" comentou no Hacker News:
O vNext já foi historicamente usado no contexto do ASP.NET para se referir ao ASP.NET v6. O versionamento foi reiniciado para o ASP.NET Core, que está agora na versão 2. O Entity Framework costumava ser um componente do .NET framework, mas agora é autônomo e tem uma versão do Core [...] Lembro que, muitos anos atrás, havia também o .NET Passport ... que não tinha nada a ver com tudo que mencionei relacionado à marca .NET. E agora temos o .NET 5, que não é nem Framework nem Core - então o ASP.NET vai deixar de fazer parte do Core também? É impressão minha, ou isso está muito confuso?
De qualquer forma, tudo indica que o trabalho futuro no .NET será focado no .NET-Core, e que o .NET 5 será o próximo passo para o .NET Core. Todo o desenvolvimento relacionado continuará sendo de código aberto e orientado pela comunidade.
A versão de produção do .NET Core está prevista para o setembro deste ano, e o .NET 5, para o final de 2020, conforme o atual roadmap do .NET Core.