Having spent a couple of days trying to load a 30.5Gb Xml file, i’ve discovered that there is a problem in the XmlTextReader class in that is uses an integer to track the file position. Now, I guess that having massive Xml files isn’t really what they were intended for, but that’s why i’m using the XmlTextReader and not the XmlDocument.
Anyway, the solution is to get your supplier to send you smaller files as you’ll not read past the integer maximum value of 2,147,483,647. (Or you could write your own XmlTextReader implementation.) (.Net framework 2.0 also has this problem.)