Dude, you should add the "Beginner" tag to your question too (I'm not dis'ing you, this is a beginner question).
XmlTextReader does not load the entire file into memory, it operates on a stream.
All of filestream objects read the file in "chunks".
You can specify how much data (i.e. how big a chunk) to bring back to your program with each call (i.e. m bytes, where m is any integer - possibly long - value, or with a text reader, a single line of arbitrary length)
The OS will cache n bytes (where n is 0 some or all) per read for performance reasons.
You have absolutely no control over the size of n, and will only frustrate yourself experimenting to find out what it is, as it changes due to a thousand different environmental factors.