Removing software on Windows is not always finished when the uninstaller completes. Leftover files, startup entries, background services, and scheduled tasks can keep consuming disk space, slowing startup, or causing conflicts during upgrades and reinstalls.
Most desktop apps register an uninstaller entry that Settings calls when Uninstall is selected. Depending on how the app was installed, the removal process may be handled by an .msi package, a vendor uninstaller, or a per-user installer that stores data under the user profile. These mechanisms often remove core binaries but intentionally leave configuration, caches, or shared components behind.
Extra care is needed when removing remnants because some folders and registry keys are shared by multiple applications. Administrative privileges are commonly required to delete protected files or remove system-level services, and a reboot is often necessary to release locked files or unload drivers. Registry cleanup is optional but risky, so backups should exist before deleting anything.
Steps to completely remove programs on Windows:
- End the program's remaining processes in Task Manager → Processes before uninstalling.

- Open Settings using Win + I.

- Open Settings → Apps → Installed apps to view installed software.
Windows 10 labels this area as Apps → Apps & features.
- Search for the program name in Installed apps.

- Open the program menu and select Uninstall.

- Confirm the uninstall prompt shown by Settings.
Confirm the publisher and intent before approving any UAC elevation prompt.
- Complete the vendor uninstaller until it reports success.
If the uninstaller reports files in use, retry after a reboot and only fall back to Safe Mode when the normal uninstall cannot proceed.
- Restart Windows to release locked files and unload background components.

- Open the main install location in File Explorer (commonly C:\Program Files or C:\Program Files (x86)).

- Delete the leftover folder that matches the removed program or vendor name.
Avoid deleting shared folders such as runtime redistributables or common vendor frameworks used by other applications.
- Open C:\ProgramData in File Explorer to check for system-wide leftovers.
Enable View → Show → Hidden items if C:\ProgramData is not visible in the path list.
- Delete any leftover vendor or program folder under C:\ProgramData.

- Open the Run dialog with Win + R and enter appdata.

- Delete the leftover vendor or program folder under AppData\Roaming.

- Open the Run dialog and enter localappdata.

- Delete the leftover vendor or program folder under AppData\Local.

- Open Task Manager → Startup apps to check for orphaned startup entries.

- Disable any leftover startup entry that still references the removed program.
Startup entries typically disappear after clean uninstalls, so a remaining entry often indicates leftover files or a separate updater component.
- Open Task Scheduler by running taskschd.msc.

- Locate scheduled tasks created by the removed program under Task Scheduler Library.

- Delete scheduled tasks that belong to the removed program.
Deleting unrelated scheduled tasks can break other software updates or system maintenance jobs.
- Open Services by running services.msc.

- Locate a leftover service for the removed program in Services.

- Open the leftover service Properties and note the Service name.

- Stop the leftover service from its Properties window.
Stopping the wrong service can disrupt other applications or system functions.
- Set the leftover service Startup type to Disabled.

- Delete the leftover service entry using its Service name.
sc.exe delete "ServiceName" [SC] DeleteService SUCCESS
Deleting the wrong service entry can prevent dependent software from working and may require repair or reinstall.
- Open Registry Editor by running regedit only when remnants persist after file, task, and service cleanup.

- Export a backup of any registry key before deleting it.
Deleting the wrong registry key can break other applications or destabilize Windows, so remove only keys clearly tied to the removed program.
- Remove leftover vendor keys under HKEY_CURRENT_USER\Software and HKEY_LOCAL_MACHINE\SOFTWARE when the publisher name matches the removed program.

- Verify the program name returns no results in Settings → Apps → Installed apps search.

Mohd Shakir Zakaria is a cloud architect with deep roots in software development and open-source advocacy. Certified in AWS, Red Hat, VMware, ITIL, and Linux, he specializes in designing and managing robust cloud and on-premises infrastructures.
