When you create a new XmlTextReader, submitter string, it locks the file with write lock (but not read lock); however, if you provide it Stream, it will depend on the flow itself.
FileStream stream = new FileStream(@"myfile.xml", FileMode.Open,
FileAccess.Read, FileShare.ReadWrite);
XmlTextReader reader = new XmlTextReader(stream);
Now you can read without blocking.
source
share