You're trying to run a game or a graphics-heavy app, and instead of loading, you get STATUS_GRAPHICS_INVALID_CLIENT_TYPE. Yeah, that's annoying. It means the DirectX runtime can't match the client type your app requested with what your driver reports. Let me show you the fix that works for most people, then explain why it works.
The Real Fix: Update GPU Driver + Reset DirectX Cache
Skip the registry edits and system restore points for now. Do this:
- Uninstall your current GPU driver completely. Use Display Driver Uninstaller (DDU) in Safe Mode. Get DDU from wagnardsoft.com. Boot into Safe Mode, run DDU, select "Clean and restart." This removes leftover files and registry entries that can confuse DirectX.
- Install the latest driver from the GPU maker's site. For NVIDIA, use the Game Ready driver from nvidia.com. For AMD, get it from amd.com. Don't let Windows Update choose one — it's often outdated.
- Clear the DirectX cache. Open Command Prompt as admin, then run:
In the window that opens, click "Save All Information" to a text file (optional, but good for logs). Then close dxdiag. Now delete everything indxdiag
(if it exists) andC:\Windows\System32\DirectX\D3D
(run%TEMP%\DirectX%TEMP%in File Explorer). - Restart your PC. Then try launching your app again.
Why This Works
The error 0xC01E035B comes from the DirectX graphics kernel (dxgkrnl.sys). What's actually happening here is that your app (say, a game) asks DirectX to create a "device" with a specific client type — like D3D11 or D3D12. DirectX then queries the GPU driver to see if it supports that type. If the driver returns something unexpected — maybe it's corrupted, or a leftover file from an old driver version — DirectX throws this error.
The reason step 3 works is because DirectX stores cached shader and driver info in those folders. Old cache files can point to a driver that no longer exists, causing mismatches. Clearing them forces DirectX to re-query the driver fresh. Think of it like clearing browser cache when a site breaks — same idea.
Less Common Variations
Sometimes the fix above isn't enough. Here's what else can cause this error:
Mixed Driver Versions (Hybrid Graphics Laptops)
Laptops with Intel integrated + NVIDIA/AMD discrete GPUs can hit this when the Intel driver is outdated but the discrete driver is new. The mismatch happens when the app tries to use the discrete GPU but the Intel driver (which manages display output) reports a wrong client type. Fix: update the Intel driver too, from the Intel Driver & Support Assistant.
Windows Update Broke Something
I've seen this after a Windows 11 24H2 update. Microsoft sometimes ships a DirectX update that conflicts with your driver. Roll back the update: go to Settings > Windows Update > Update history > Uninstall updates. Remove the latest KB update. Reboot. Then install the GPU driver again.
Third-Party Graphics Tools
Tools like MSI Afterburner, RivaTuner, or even Discord overlay can hook into DirectX and report a fake client type. Disable all overlays and close those tools. Test the app. If it works, re-enable them one by one to find the culprit.
Prevention
To avoid this in the future:
- Always uninstall old GPU drivers before installing new ones. Don't just "install over" — that's how leftover crap builds up.
- Keep your DirectX runtime up to date. Download the DirectX End-User Runtime Web Installer from Microsoft once a year. It adds missing runtime files.
- Run games in fullscreen, not borderless windowed. That mode can confuse DirectX with certain overlays.
- Don't let Windows Update manage your GPU driver. Use Group Policy or Device Installation Settings to block it. Search "How to stop Windows Update from updating your GPU driver" — you'll find the registry tweak.
Most of the time, the driver update + cache clear fixes this. If it doesn't, check the hybrid laptop or overlay issues. The error code tells you it's a client type mismatch, and the fix is always about aligning what the driver reports with what the app expects.