XmlTextReader не загружает весь файл в память, он работает в потоке.
Все объекты файлового потока читают файл в «чанках».
Вы можете указать, какой объем данных (т. Е. Насколько большой чанк) будет возвращаться в вашу программу с каждым вызовом (т. Е. M байтов, где m - любое целое число, возможно, длинное значение, или с помощью текстового ридера, одной строки произвольной длины. )
По соображениям производительности ОС будет кэшировать n байтов (где n равно 0 или все) за чтение.
У вас нет абсолютно никакого контроля над размером n, и вы просто расстроитесь, экспериментируя, чтобы выяснить, что это такое, поскольку оно меняется из-за тысячи различных факторов окружающей среды.