Most programs that you install on a Windows machine can be removed through the Control Panel or Settings application. While that works most of the time, it is the case that many programs are not removed completely.
BCUninstaller free app excels at removing large amounts of applications with minimal user input. It can clean up leftovers, detect orphaned applications, run uninstallers according to premade lists, and much more.
Out of all of its features, the ability to uninstall massive numbers of applications automatically is what defines BCUninstaller. Because of this it is one of the best tools for cleaning up long-running or pre-installed systems from, crapware, malware and other junk.