Well, thats not really a magic at all. When you empty recycle bin in order to permanently remove deleted files from your hard disk, Windows does not actually remove them. Instead, for performance reasons, Windows simply marks the location of deleted files on hard disk as unoccupied and reserve them for future writing. Hence, until Windows decide to write a new data at the same location of deleted files, those files are theoretically still exists in hard disk.
If you want to recover deleted file from harddisk, simply scan through all unoccupied areas in your harddisk and try to find data that match the profile of file that youre looking for. When you find them, write those data into a new file. This is how an undelete program works.
So, what should I do if I want to remove file immediately (permanently) from my hard disk? Thats easy, all you have to do is force Windows to write a new data at the same location of the file that you want to delete. This is how a secure delete program works. Currently, there are several algorithms that can be used for securely overwrite deleted files.
TweakNow SecureDelete supports two of the most common used algorithms: Gutmann and DOD 5220.22M. As addition the program also support overwriting deleted files using series of random character multiple times. This method might be less secure, but faster than the other two methods and still safer than standard Windows delete method.