Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Outro modo de fazer, queria saber se tem um lado ruim em usar essa aplicação..

O C# tem um recurso chamado ReadAllText, que faz a leitura de todo o texto contido no txt, sem necessidade de um foreach:

var linha = File.ReadAllText("contas.txt");
            //var linha = File.ReadAllLines("contas.txt");
            Console.WriteLine($"Total de caracteres:{linha.Length}");
            Console.WriteLine(linha);

            Console.ReadLine();
1 resposta
solução!

Rapaz, pelo que pude ver aqui no fonte do .Net, é o seguinte:

o método File.ReadAllText() usa o metodo StreamReader.ReadToEnd(), que por sua vez faz um loop passando char por char do arquivo conforme o código abaixo:

StringBuilder sb = new StringBuilder(charLen - charPos);
do {
    sb.Append(charBuffer, charPos, charLen - charPos);
    charPos = charLen;  // Note we consumed these characters
    ReadBuffer();
} while (charLen > 0);
return sb.ToString();

No fim das contas vai ser um loop, passando por todo o texto e empilhando ele em um StringBuilder.

Eu usaria de boa.