Sometimes XenServer does not allow you to shutdown or reboot a VM because “Another operation involving the object is currently in progress”. It would be nice to see what that operation is and be able to terminate the operation from XenCenter, but that isn’t the case yet. However, it is possible from the command line to terminate the VM.
We start by finding the UUID of the VM (replacing the name):
xe vm-list | grep -a1 -b1 NAME_OF_VM
The first line of the output tells you the UUID. Copy that for the next command:
list_domains | grep UUID_OF_VM
The first number of the output shows you the domain identifier. Copy that for the final command:
/opt/xensource/debug/destroy_domain -domid DOMAIN_IDENTIFIER