I use Iobit Uninstaller, as in my opinion it is the best uninstaller at the moment. Unlike Revo and other similar uninstallers, it can do a scan for leftover after rebooting. For example, if you uninstall and antivirus and it wants to reboot after afterwards, you can let it reboot and then IObit Uninstaller will scan for leftover when Windows loads agian, which is something that other uninstallers can't do. Also, it has a batch uninstall feature that lets you uninstall multiple programs, one after the other in one go. If a reboot is ever needed, IObit Uninstaller will continue where it left off when you restart, and any remaining programs will be uninstalled and then it will check for leftover for every program you uninstalled.
I never use Windows built-in Uninstaller, as there's no such thing. When you uninstall a program via Add/Remove Programs / Programs and Features or the program's uninstall icon in the Start Menu, it runs the uninstall included with the program. Many programs use windows Installer, in which case there willl be some script file which tell Windows Uninstaller exactly what files and registry keys to remove. Windows itself does not keep track of the programs you have installed, and also, there is absolutely no difference between uninstalling a program iwth Add/Remove Programs or from it's uninstall icon. When you use Revo/IObit/Geek Uninstaller or similar programs they run the program's uninstaller and then do their own check for leftovers.
On a final note, Revo recently released an update to the free version, and it now finally has 64 bit support.