When deploying a web application that targets the .NET Framework 3.5 (which includes .NET 2.0 and 3.0), your web server must have this framework version installed. On modern Windows Server editions, .NET 3.5 is included as an optional feature but is not enabled by default. This guide covers installation methods for every major Windows Server version.

Why .NET 3.5 Is Still Needed

Although .NET Framework 4.x and .NET (Core) 5+ are current, many legacy applications still require .NET 3.5. The .NET 3.5 runtime is not a subset of .NET 4.x — they run side-by-side. An application built for .NET 2.0, 3.0, or 3.5 specifically needs the 3.5 runtime installed.

Requisitos Previos

  • Administrator access to the server
  • For offline installation: Windows Server installation media (ISO or DVD)
  • For online installation: Internet access or access to Windows Update / WSUS

Method 1: Server Manager (GUI)

This is the easiest method when you have GUI access to the server.

Windows Server 2012, 2012 R2, 2016, 2019, and 2022

  1. Open Server Manager from the taskbar or Start menu.
  2. Click Manage in the top-right corner, then select Add Roles and Features.
  3. Click Next through the “Before You Begin” page.
  4. Select Role-based or feature-based installation and click Next.
  5. Select the target server and click Next.
  6. On the Server Roles page, click Next without making changes.
  7. On the Features page, check the box for .NET Framework 3.5 Features.
  8. Click Next, then click Install.
  9. Wait for the installation to complete, then click Close.

If the installation fails because source files cannot be found, you need to specify an alternate source path. See the offline installation section below.

Windows Server 2008 and 2008 R2

  1. Open Server Manager from Administrative Tools.
  2. In the left pane, click Features.
  3. Click Add Features in the right pane.
  4. Expand .NET Framework 3.5.1 Features and check the boxes for the components you need.
  5. Click Next and then Install.

On Server 2008, .NET 3.5 SP1 may also be available as a standalone download from the Microsoft Download Center if the Server Manager approach is unavailable.

Method 2: DISM Command Line

The Deployment Image Servicing and Management (DISM) tool is the preferred method for command-line installations and for automation scripts.

Online Instalación

Open an elevated Command Prompt (Run as Administrator) and run:

DISM /Online /Enable-Feature /FeatureName:NetFx3 /All

The /All flag enables all parent features that .NET 3.5 depends on. This command downloads the required files from Windows Update.

Offline Instalación from Windows Media

If your server does not have internet access, mount the Windows Server installation ISO and specify the \sources\sxs folder:

DISM /Online /Enable-Feature /FeatureName:NetFx3 /All /LimitAccess /Source:D:\sources\sxs

Replace D: with the drive letter of your mounted ISO or DVD. The /LimitAccess flag prevents DISM from contacting Windows Update, using only the specified source.

Checking Instalación Status

To verify that .NET 3.5 is installed:

DISM /Online /Get-Features | findstr NetFx3

You should see:

Feature Name : NetFx3
State : Enabled

Method 3: PowerShell

PowerShell provides another scripting-friendly option.

Online Instalación

Install-WindowsFeature Net-Framework-Core

Offline Instalación

Install-WindowsFeature Net-Framework-Core -Source D:\sources\sxs

Checking Status

Get-WindowsFeature Net-Framework-Core

The output will show [X] if installed or [ ] if not installed.

Method 4: Group Policy for WSUS Environments

In environments using Windows Server Update Services (WSUS), the server may fail to download .NET 3.5 source files because WSUS redirects Windows Update requests. You have two options:

Option A: Configure Group Policy to Contact Windows Update Directly

  1. Open Group Policy Editor (gpedit.msc).
  2. Navigate to Computer Configuración > Administrative Templates > System.
  3. Double-click Specify settings for optional component installation and component repair.
  4. Set it to Enabled.
  5. Check Contact Windows Update directly to download repair content instead of Windows Server Update Services (WSUS).
  6. Click OK and run gpupdate /force.

Option B: Use Offline Instalación

Use the DISM or PowerShell commands with the /Source parameter pointing to the installation media, as described above.

Configuring IIS for ASP.NET 3.5

After installing .NET 3.5, you also need to ensure IIS is configured to support ASP.NET applications targeting that framework.

Register ASP.NET with IIS

On older servers, you may need to register ASP.NET manually:

%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i

For 64-bit servers:

%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_regiis.exe -i

Set the Application Pool .NET Version

  1. Open IIS Manager.
  2. Click Application Pools in the left pane.
  3. Select the application pool used by your site.
  4. Click Basic Settings in the right pane.
  5. Set the .NET CLR version to v2.0.50727 (this covers .NET 2.0, 3.0, and 3.5).
  6. Click OK.

Verify the Configuración

Create a test page named info.aspx with the following content:

<%@ Page Language="C#" %>
<%= Environment.Version.ToString() %>

Browse to the page. It should display the CLR version (for example, 2.0.50727.9174). Remove this test page after verification.

Solución de Problemas

Error: Source Files Could Not Be Found

This is the most common issue. It occurs when the server cannot reach Windows Update and no local source is specified.

Solución: Use the offline installation method with /Source:D:\sources\sxs /LimitAccess.

Error: 0x800F0954

This error typically appears in WSUS environments.

Solución: Configure Group Policy to allow direct contact with Windows Update (see Method 4, Option A) or use offline installation media.

Error: 0x800F081F

The specified source files could not be found.

Solución: Verify that the path points to the correct sources\sxs folder and that the ISO matches the server edition and version.

Instalación Hangs or Takes Very Long

When downloading from Windows Update, the installation can take 10-30 minutes depending on connection speed. If using offline media, it typically completes within 2-5 minutes.

Version Compatibility Reference

Windows Server Version.NET 3.5 StatusInstalación Method
Server 2008Optional role featureServer Manager or download
Server 2008 R2Optional featureServer Manager or DISM
Server 2012Optional featureServer Manager, DISM, or PowerShell
Server 2012 R2Optional featureServer Manager, DISM, or PowerShell
Server 2016Optional featureServer Manager, DISM, or PowerShell
Server 2019Optional featureServer Manager, DISM, or PowerShell
Server 2022Optional featureServer Manager, DISM, or PowerShell

Resumen

Installing .NET Framework 3.5 on a Windows web server requires enabling it as a Windows feature rather than running a standalone installer. Use Server Manager for a GUI approach, DISM or PowerShell for command-line and scripted installations, and always keep Windows installation media available for offline scenarios where internet access or WSUS configuration prevents online installation. After installation, verify that IIS application pools are configured to use the v2.0 CLR for applications targeting .NET 3.5.