I have a slave hard disk fitted to my PC. It is 250GB NTFS and is used to store mostly .mp3 files. Current usage is approx 5GB.
I have just defragged this using Raxco's PerfectDisk software. This took just about 2 hours. My C: drive, which has more on it, has never taken more than about 1 hour to defrag.
External drive ? They can be slower as they have to send data through that external cable. So, your C: drive is how large ? How much data ? The more you save and delete files the more fragmented it's likley to be.
Bang goes the best guess then. Assuming it's installed correctly, no contention etc, I can only think it is due to greater use (write/delete) and thus greater amount of fragmentation. Twice as long is strange though. Not set to zero out the unused bits is it ? I'm not that familiar with DiskPerfect
Were you using the pc whilst the defrag utility was running on the internal drive? If so, possible you did not have sufficient resources to run both at the same time. The defrag utility would have run slower in that case. Also depends on the level of defragmentation on the drive.
Defragmentation is greatly over rated and isn't the nightmare everybody assumes. Defrag with it's moving and shifting files around also acts against the lifecycle of the drive.