PDQ Package Library and .NET Cumulative Updates

Preinstalled .NET Framework versions

Every supported version of Windows includes a preinstalled .NET Framework 4.x version, listed in the tables below. The .NET Framework Cumulative Updates in the Package Library apply to .NET Framework 4.8 and 4.8.1 only, so a machine with an earlier preinstalled version needs the .NET Framework 4.8 base package before it can receive them.

Windows Server

Windows Server version Preinstalled .NET Framework
Windows Server 2016 4.6.2
Windows Server 2019 4.7.2
Windows Server 2022 4.8
Windows Server 2025 4.8.1

Windows client

Windows client version Preinstalled .NET Framework
Windows 10 22H2 (ESU-supported) 4.8
Windows 11 22H2 and above 4.8.1

 

Which package to deploy for each preinstalled version

 

For Windows Server 2016 and Windows Server 2019, .NET Framework 4.8 is the highest supported .NET Framework release. While those operating systems shipped with older versions (4.6.2 on Server 2016 and 4.7.2 on Server 2019), they can be upgraded to 4.8, but cannot be upgraded to 4.8.1.

  • If .NET Framework 4.8 or 4.8.1 is preinstalled (Windows Server 2022, Windows Server 2025, Windows 10, and Windows 11), deploy the .NET Framework Cumulative Update for that version.
  • If an earlier version is preinstalled (Windows Server 2016 and Windows Server 2019), deploy the Microsoft .NET Framework 4.8 base package first, then deploy the .NET Framework 4.8 Cumulative Updates going forward. Microsoft documents .NET Framework 4.8 as an in-place update to .NET Framework 4 through 4.7.2 in its .NET Framework 4.8 offline installer article.

Deploy .NET Framework Cumulative Updates

To patch .NET Framework with the Package Library, deploy the latest Windows Cumulative Update, install .NET Framework 4.8 if the machine has an earlier version, then deploy the .NET Framework Cumulative Update for the installed version. You can then automate the process with a schedule.

  1. Deploy the latest Windows Cumulative Update (CU) for the operating system from the Package Library. It contains the latest Servicing Stack Updates (SSU) that the .NET patch may require.
  2. Find the preinstalled .NET Framework version in the tables above. If it is earlier than 4.8, deploy the Microsoft .NET Framework 4.8 base package.
  3. Deploy the .NET Framework Cumulative Update for your operating system and installed .NET Framework version (4.8 or 4.8.1). Package names start with the operating system, for example Windows Server 2019 - .NET Framework 4.8 Cumulative Update (64-bit).
  4. To automate patching, create a schedule in PDQ Deploy that targets the "Old or Not Installed" collection for your operating system and .NET Framework version in the Collection Library, for example Windows 11 (24H2) - Microsoft .NET 4.8.1 Cumulative Update - (Old or Not Installed).
Was this article helpful?