Vi que existe uma pergunta semelhante mas a resposta não é exatamente o que foi perguntado.
Como o fluxoDoArquivo.Read sabe onde ele parou para na próx. iteração do While ele continuar de la?
ele tem um buffer de 1024, leu a partir do 0, 1024x e guardou tudo no buffer, na próxima iteração eu estou chamando
fluxoDoArquivo.Read(buffer, 0, 1024);
Ele não deveria começar do 0 e ler mais 1024 e nisso ficar num loop infinito sempre repetindo os primeiros 1024 caracteres ou internamente ele ja faz isso pra nós sem precisarmos nos preocupar em alguma forma de incrementar ele?