It seems this is a well-known issue, but I’ve just run into it (and I did it hard 😐
If you want to destroy a VM that has snapshots, you should manually delete all snapshots before issuing the “Delete” command on the VM, otherwise Hyper-V (better said, the team behind Hyper-V) becomes smart and it first merges the last snapshot into the main VHD, see Ben Armstrong’s blog).
Now I had to destroy a set of test VM-s and I quickly issued the delete command, then I started another VM to run some tests.
The newly started VM runs at 30% speed and Hyper-V Manager shows cheerfuly (to quote Ben Armstrong) “Destroying … (3%)”. If I correctly understand the situation from other people that hit this issue before, I’ll see this “cheerful” message for some time, so now I have to let this Hyper-V server finish the much unneeded job of merging snapshots for all VM-s that are about to be destroyed and use another Hyper-V server. Lucky me, we have two servers now, but a few years ago I’d probably have to stop Hyper-V service, physically delete the VM-s from disks, restart Hyper-V service and then inform it it is ok it cannot find some VM-s.
Hopefully the Hyper-V guys will soon implement a Destroy command.