C'è un cliclo di troppo nel tuo codice.
Il ciclo For .... od il ciclo While .....
Siccome non sai quante righe sono contenute nel file stream
giustamente dovresti utilizzare il While ...
Però potrebbero esserci più righe che text box ........
Al di la' delle scelte grafiche, se sei certo che non ci siano più di 4 righe
nel file di testo che andrai a leggere, allora potresti
benissimo utilizzare il seguente codice :

codice:
//Lettura del file di testo
string line;

        System.IO.StreamReader file = new System.IO.StreamReader(@"c:\a.txt");
        //   for (int i = 0; i <= 2; i++)  <----- Ciclo di troppo
        //   {                                  <----- Ciclo di troppo 


            int i = 0;
             while ((line = file.ReadLine()) != null)
            {
               //istruzione per la copia della textbox!! ex: Textbox1.text=line;
               txtMatrix[i].Text = line;
               i++;
            }


        //  }                                    <----- Ciclo di troppo 
        file.Close();