Si mas o menos te entiendo estás utilizando palabras completas de 3 en 3 separadas por ";", de ser así podrías hacer de la siguiente forma:
Estoy suponiendo en vez de usar la clase Reportes usar una lista de strings (ya sería cuestión de que lo adaptes a lo que necesitas)
Código:
...
List<string> reportes = new List<string>();
//#4
string temp = string.Empty;
for (int i = 0; i < partes.Length;i+=3)
//un ciclo que agarre y meta cada objeto al listado, agregar un nuevo elemento a las listas, se van aplilando c/u
{
temp = partes[i] + " " + partes[i + 1] + " " + partes[i + 2];
reportes.Add(temp);
}
Espero sea lo que necesitas
Saludos