The best drives are internal to the computer - the exception to this is when you are moving a lot of files between computers (i.e. work and home) - if they are both at home - you can use the local network....
In my opinion, the best setup is a small SSD (128GB - 250GB) for your operating system and select programs, and a 500GB - 1TB HDD for your data. It is also good to have a 2nd hard drive installed that is large enough to backup both drives - I use a program called SyncBack Free that does this automatically every night.
Time machine makes backups of your system before changes are applied (i.e. installing a program, performing updates, etc), and as long as you have a "good" version saved, backup will take you there. If every snapshot was saved, it would eventually fill up your drives, so only the last 3-5 are saved.