Potrei sembrare ridondante (passatemi il termine visto l'ambito ) ma vorrei farvi notare che in un linguaggio di così alto livello come il C# è sempre meglio prima usare quello che la natura (del C#) ci da.

Per concatenare un array di stringe in una stringa non serve farsi funzioni in casa, già c'è:

codice:
string[] str = new string[3] { "A", "B", "C" };
string concat = string.Join("", str);
//concat -> "ABC"
In genere è meglio utilizzare se possibile metodi e strumenti offerti dall'ambiente perché sicuramente più performanti di soluzioni fatte in casa.

Per nulla togliere all'ingengo personale ma sarebbe come costruirsi una bicicletta in legno quando già te ne viene offerta una avveniristica compresa nel prezzo