If you need to interrupt I/O operations, you cannot use convenience
methods like XmlDocument.Load(). Use asynchronous I/O to load the XML
file from a file stream, or try loading the file on a worker thread
(which doesn't make it interruptible per se, but at least doesn't block
your man thread).