Yury Pukhov, YuSMP Group
Yury Pukhov CEO & Mobile Engineering Lead, YuSMP Group
Add YuSMP as a preferred source on Google
TL;DR: The Windows Software Development Kit (Windows SDK) is Microsoft’s free set of headers, libraries, WinRT metadata and build tools for compiling native Windows apps. Developers who build C++, WinUI or packaged apps need it; ordinary users do not. The current stable families are 10.0.26100 and 10.0.28000, and it is safe to uninstall versions no project uses.

The Windows Software Development Kit is the toolkit Microsoft publishes so that developers can build applications that call Windows APIs directly. It contains the C and C++ header files, import libraries (files that tell the linker where Windows functions live), Windows Runtime metadata (machine-readable descriptions of modern Windows APIs) and command-line tools that a compiler needs to produce a native Windows program, plus utilities for signing, packaging and debugging that program.

Most people meet the Windows SDK in one of two ways: a developer sees a build error saying a specific SDK version is missing, or a regular user spots several “Windows Software Development Kit” entries in the installed apps list and wonders whether they are safe to remove. Teams that hire us for custom .NET and Windows app development usually hit a third problem: nobody on the project is sure which SDK version the code should target, so builds behave differently on different machines.

This guide answers all three questions with the version data Microsoft publishes for 2026. If you are new to the general concept, our explainer on what a software development kit is covers SDKs across platforms.

What is the Windows Software Development Kit?

The Windows Software Development Kit is a free Microsoft package that gives developers compile-time access to the Windows platform: Win32, COM and Windows Runtime (WinRT) APIs. It does not run your app and is not shipped to end users. It sits on the developer’s machine or build server and tells the compiler which Windows functions exist and how to call them.

Microsoft describes the current release as containing “the latest platform headers, libraries, WinRT metadata, and build tools required to develop Windows applications” for both UWP and Win32 development. Each SDK release maps to a Windows version, so an SDK built for Windows 11 version 24H2 exposes every API introduced up to that release.

The kit changed its name several times, which is why older forum answers still mention the “Platform SDK” or “Win32 SDK”. The key milestones:

  • 1999: Microsoft ships the Platform SDK with compilers, headers, libraries and samples.
  • Windows Vista era: separate kits for .NET Framework, Tablet PC and Windows Media merge into one Windows SDK.
  • 2012, Windows 8: the DirectX SDK is folded into the Windows SDK.
  • 2013: the .NET Framework SDK splits back out, and the name settles on “Windows SDK”.

On disk, the Windows SDK installs to C:\Program Files (x86)\Windows Kits\10, even on Windows 11. Each version gets its own subfolder under Include, Lib and bin, which is why several versions can sit side by side without conflict.

What does the Windows SDK include?

The Windows SDK includes four groups of components: headers and libraries for the compiler, Windows Runtime metadata for modern APIs, build and packaging tools, and diagnostic tools. Visual Studio and MSBuild pick the right pieces automatically once a project names an SDK version.

ComponentWhat it is forExamples
Headers and import librariesDeclare Win32 and COM functions so C and C++ code can compile and link against themwindows.h, kernel32.lib, user32.lib
WinRT metadataDescribe Windows Runtime APIs for C++/WinRT, C# and other projections.winmd files, API contracts
Build toolsCompile resources and interfaces, embed manifestsrc.exe, midl.exe, mt.exe
Packaging and signing toolsCreate MSIX packages (Microsoft’s modern app installer format) and sign binaries so Windows and SmartScreen trust themmakeappx.exe, makepri.exe, signtool.exe
Debugging and performance toolsInspect crashes and profile CPU, memory and disk useDebugging Tools for Windows (WinDbg), Windows Performance Toolkit
Certification toolsCheck an app against Microsoft Store and platform requirementsWindows App Certification Kit

The installer lets you pick features individually. A build server that only compiles and signs a WPF app does not need the debuggers or the certification kit, so trimming the selection keeps images smaller and installs faster.

Do I need the Windows Software Development Kit?

You need the Windows Software Development Kit only if you compile, package or sign Windows software. If you just use Windows, play games or run business apps, you do not need it, even if some program installed it alongside other tools.

Your situationDo you need the Windows SDK?
Building native C or C++ desktop apps (Win32, MFC, DirectX)Yes, it is mandatory
Building WinUI 3 or UWP appsYes, for WinRT metadata and packaging
Building WPF or Windows Forms apps on modern .NETUsually yes, when you target a Windows TFM or sign and package with MSIX
Signing installers or executables with signtoolYes, signtool ships in the SDK
Web, mobile or cloud backend development onlyNo
Using Windows for office work or gamingNo; removing it will not affect normal apps

Why is the Windows SDK on my PC if I never installed it?

The Windows SDK usually arrives as a dependency of Visual Studio, Visual Studio Build Tools, game engines, driver kits or developer utilities. Visual Studio workloads such as “Desktop development with C++” and “WinUI application development” select a Windows SDK version by default, and upgrading Visual Studio can add a newer one without removing the old version. That is why many machines show two or three SDK entries.

Which Windows SDK version should you use in 2026?

Use the latest stable Windows SDK for new projects: in November 2026 that means the 10.0.26100 family for broad compatibility or the 10.0.28000 family if you need APIs from Windows 11 version 26H1. A newer SDK only widens what your code can see at compile time; the minimum Windows version your app supports is set separately.

Developer typing on a keyboard next to a laptop, a mini PC and a single-board computer used to test a Windows app on different hardware

Windows SDK version numbers follow the pattern 10.0.BBBBB.x. The middle number matches the Windows build the SDK was made for, and the last number marks a monthly servicing update with fixes but no new APIs. Support status as published by Microsoft:

SDK familyMatches Windows versionLatest build listed (2026)Status
10.0.28000Windows 11, version 26H110.0.28000.2957 (September 2026)Supported
10.0.26100Windows 11, version 24H2 (and 25H2, delivered as an enablement package)10.0.26100.9457 (September 2026)Supported
10.0.22621Windows 11, versions 22H2 and 23H210.0.22621.5040Out of support since 12 November 2025
10.0.22000Windows 11, version 21H2–Out of support
10.0.19041Windows 10, version 200410.0.19041.5609Out of support since 14 October 2025

The SDK ships in two channels. The stable channel is meant for production and includes a limited set of experimental APIs. The preview channel follows Windows Insider builds and exposes upcoming APIs earlier. Microsoft’s own guidance is to never ship production apps built against preview SDKs.

What are the Windows SDK system requirements?

The Windows SDK runs on modest hardware: a 1.6 GHz processor, 1 GB of RAM and 4 GB of free disk space. Supported hosts include Windows 11 version 21H2 or later, Windows 10 version 1507 or later and, for command-line builds only, Windows Server 2012 R2 through 2022. LTSC editions and S mode are not supported for UWP development.

What is the difference between the Windows SDK, Windows App SDK, .NET SDK and WDK?

The Windows SDK is the low-level platform kit; the Windows App SDK is a separate app framework that builds on top of it; the .NET SDK compiles C# and F#; and the Windows Driver Kit (WDK) is for drivers. Most modern desktop projects use the first three together, and confusing them is the most common source of version questions.

Windows SDKWindows App SDK.NET SDKWindows Driver Kit
PurposePlatform headers, libraries, WinRT metadata, toolsWinUI 3, windowing, app lifecycle, notificationsC#/F# compilers, runtime, dotnet CLIKernel and user-mode driver development
Version format10.0.26100.x2.6.5 (SemVer since 2.0)10.0.xMatches SDK build
How you get itVisual Studio Installer, standalone installer, ISO or NuGetNuGet package Microsoft.WindowsAppSDKInstaller or Visual StudioSeparate download, needs matching SDK
Ships with your app?No, build-time onlyYes, runtime is framework-dependent or self-containedRuntime yes, SDK noNo
Minimum Windows for appsSet by your projectWindows 10 version 1809Depends on .NET versionDepends on driver model

The Windows App SDK moves fastest. Version 2.0 shipped on 29 April 2026 as the first major release since 1.0 and switched to semantic versioning, and the latest stable release listed by Microsoft is 2.6.5 from 2 November 2026. Microsoft states plainly that the Windows App SDK does not replace the Windows SDK: you need both, and you can update the Windows App SDK without changing your Windows SDK version.

How do you install the Windows SDK?

The easiest way to install the Windows SDK is through the Visual Studio Installer, which adds the right version for each workload. Standalone installers, ISO images and NuGet packages cover build servers and machines without Visual Studio.

  1. Visual Studio Installer. Open the installer, choose Modify, select a workload such as “Desktop development with C++” or “WinUI application development”, then confirm the Windows SDK version on the Individual components tab.
  2. Standalone installer. Download the installer for the exact build you need from Microsoft’s Windows SDK downloads page and select only the features you use.
  3. ISO image. Use the ISO for offline or air-gapped build agents, then run the same feature selection.
  4. NuGet for CI. Reference the Windows SDK build tools packages from Microsoft’s NuGet feed so build agents restore a pinned SDK version with the code, instead of relying on whatever is installed on the image.
  5. Verify. Check that C:\Program Files (x86)\Windows Kits\10\Include\<version> exists and that your project builds without SDK warnings.

On Windows 8.1 and earlier, the installer also needs the Universal C Runtime update from Windows Update. For any team larger than one developer, pin the SDK version in source control rather than in each person’s head, because “works on my machine” build failures often trace back to different SDK versions on different machines.

How do you target a Windows SDK version in your project?

You target a Windows SDK version through MSBuild properties: C# projects put it in the target framework moniker (TFM), C++ projects set WindowsTargetPlatformVersion. A second property sets the oldest Windows version your app supports, and the gap between the two is where runtime checks are required.

Two developers reviewing a build configuration on a laptop in front of a whiteboard with a hand-drawn component diagram

A WinUI 3 or WPF project on .NET 10 typically looks like this:

<PropertyGroup>
  <TargetFramework>net10.0-windows10.0.26100.0</TargetFramework>
  <SupportedOSPlatformVersion>10.0.19041.0</SupportedOSPlatformVersion>
</PropertyGroup>
<ItemGroup>
  <PackageReference Include="Microsoft.WindowsAppSDK" Version="2.6.5" />
</ItemGroup>

For C++ the equivalent properties are WindowsTargetPlatformVersion and WindowsTargetPlatformMinVersion. A practical rule set for new projects:

  • compile against the latest stable SDK, such as 10.0.26100.0;
  • set the minimum version by audience: managed enterprise fleets can match the company baseline, consumer apps often use 10.0.19041.0 or 10.0.17763.0;
  • always use the latest stable Windows App SDK, since it supports back to Windows 10 version 1809;
  • guard APIs newer than your minimum with ApiInformation.IsApiContractPresent or IsTypePresent checks;
  • move projects still on .NET 8 or .NET 9 to .NET 10, because their support ended on 10 November 2026.

Skipping the runtime checks is the classic mistake: the app compiles cleanly against the new SDK, then throws TypeLoadException or MissingMethodException on a customer’s older Windows build. Our .NET software development guide explains how we audit an existing codebase before a framework upgrade.

Can you safely uninstall the Windows Software Development Kit?

Yes, you can safely uninstall the Windows Software Development Kit if you do not build Windows software, and you can remove individual SDK versions that no project targets. Uninstalling it does not affect ordinary programs, because apps never load the SDK at runtime.

Before removing a version on a developer machine, check three things:

  1. Project targets. Search your repositories for the version string (for example 10.0.22621.0) in .csproj and .vcxproj files.
  2. Visual Studio components. If Visual Studio installed the SDK, remove it through the Visual Studio Installer so the installer state stays consistent.
  3. Other tools. Driver kits, game engines and some packaging tools expect a matching SDK; keep it if you use them.

To uninstall, open Settings > Apps > Installed apps, find the “Windows Software Development Kit” entry with the version you want to remove, and choose Uninstall. If you remove a version by mistake, Visual Studio or the standalone installer can put it back in a few minutes, and a build will tell you exactly which version it expects.

How do you fix common Windows SDK errors?

Most Windows SDK errors come from a mismatch between the version a project asks for and the versions installed on the machine. The fix is either installing the requested version or retargeting the project, then keeping the version pinned for everyone.

Error or symptomLikely causeFix
MSB8036: The Windows SDK version X was not foundProject targets an SDK that is not installedInstall that version, or retarget via project properties to an installed one
windows.h or other headers not foundSDK missing or C++ workload not installedAdd the C++ workload and a Windows SDK in Visual Studio Installer
signtool or makeappx not recognizedSDK bin folder is not on the PATHUse the Developer Command Prompt or call the tool from Windows Kits\10\bin\<version>\x64
Builds pass locally but fail in CIBuild agent image has a different SDKPin the version in the project and restore it through NuGet or the agent image
App crashes on older Windows onlyNew API called without a runtime checkAdd ApiInformation checks or raise the minimum supported version

When does a Windows app need more than the SDK?

The Windows SDK solves compilation, not product decisions: which UI framework to use, how to package and update the app, how to sign it, and how to keep it working across Windows releases. Those decisions decide most of the cost of a desktop product.

A typical modern Windows app combines five layers:

  • Interface: WinUI 3, WPF or .NET MAUI;
  • App framework: the Windows App SDK for windowing and notifications;
  • Distribution: MSIX or a classic installer;
  • Trust: code signing so SmartScreen does not block the app;
  • Build: a CI pipeline that compiles against a pinned Windows SDK.

Our desktop software development guide compares those framework options in detail. If you are weighing which tools your team needs overall, see our roundup of the best software development tools for 2026.

For budgeting, YuSMP Group quotes .NET and Windows builds at fixed scope: a first app or internal dashboard from $4,100, a multi-role business app or B2B portal from $8,100, a multi-tenant SaaS platform from $13,800, and marketplace or high-load systems from $28,700. The final number depends on the number of user roles, integrations, hardware access and how much legacy code has to be ported.

Sources for this Windows SDK guide

Frequently asked questions

What is the Windows Software Development Kit?

The Windows Software Development Kit is a free Microsoft toolkit with the headers, libraries, Windows Runtime metadata and command-line tools needed to build native Windows applications. It also includes tools for signing, packaging and debugging apps. It is used only at build time and is never shipped to the people who run your software.

Do I need the Windows Software Development Kit?

You need the Windows Software Development Kit only if you compile, package or sign Windows software, for example C++, WinUI or MSIX-packaged .NET apps. Regular users, gamers and web or mobile developers do not need it. It often appears on a PC because Visual Studio or another developer tool installed it.

What is the latest Windows SDK version in 2026?

In November 2026, Microsoft lists two supported stable families: 10.0.26100, whose latest build is 10.0.26100.9457, and 10.0.28000, whose latest build is 10.0.28000.2957, both from September 2026. The 26100 family matches Windows 11 version 24H2; the 28000 family can target Windows 11 version 26H1.

Can I uninstall the Windows Software Development Kit?

Yes. If you do not develop Windows software, uninstalling the Windows Software Development Kit will not affect your other programs. Developers can remove versions that no project targets; check your project files and Visual Studio components first, and reinstall through Visual Studio if a build later asks for that version.

What is the difference between the Windows SDK and the Windows App SDK?

The Windows SDK provides platform headers, libraries and tools for compiling against Windows APIs and is used only at build time. The Windows App SDK is a separate NuGet-delivered framework with WinUI 3, windowing and app lifecycle features whose runtime ships with your app. Modern desktop projects use both, and each is versioned independently.

Is the Windows SDK free?

Yes. The Windows SDK is free to download and use, with no licensing fee, from Microsoft’s website, through the Visual Studio Installer or from NuGet. You only pay for the development tools or services you choose around it, such as paid Visual Studio editions or code-signing certificates.