The tags of your questions suggest correct approach: use
XmlReader
. It presents no limitations to the memory resources consumed, because it does not parse anything to memory. I think there is no a way to significantly increase the speed of processing compared to this approach.
At the same time, I don't know
what else you do during parsing, except the use of the reader class. You always have to do something else, and this "something else" can be slow. Apparently, I have no access to your hard drive to tell you where the bottleneck is. All I can advise is: use some performance profiler to research the problem. Please see:
https://msdn.microsoft.com/en-US/library/ms182372.aspx[
^],
https://msdn.microsoft.com/en-us/library/z9z62c29.aspx[
^].
—SA