You have to take into account how snapshots work. If you want to delete snapshots always start with the snapshots with the fewest snapshots connected to it, because every time you delete a snapshot with snapshots connected to it the snapshots which are connected to it have to be merged with the snapshot you are deleting.
For example:
A--B
|
----C---D
To delete all these snapshots you would start by deleting B and D, then C, then A. If you try deleting A first then B and C will have to be merged with A. If you then try to delete C then D will have to be merged with C.
If no merging has to be done then the snapshot will be deleted almost instantaneously, but if merging has to be done then it could take a long time depending on the number of connected snapshots and the size of the snapshots.