Ciao
Potresti usare una List<List<string>>, ossia una list contenente come oggetti delle liste di stringhe. In questo modo puoi accedere ad ogni lista di stringhe (le tue arrWeek1, arrWeek2 ecc) semplicemente con l'indicizzatore, e per renderlo visibile a tutta la classe basta dichiararlo in ambito globale:
class TuaClasse
{
private List<List<string>> arrWeek = new List<List<string>>();
public void ExtractWeek()
{
//...
//Lo usi per definire ciascuna
//delle list contenute in arrWeek
List<string> tmp = new List<string>();
tmp.Add("List1, oggetto1");
tmp.Add("List1, oggetto2");
//...
arrWeek.Add(tmp);
tmp = new List<string>();
tmp.Add("List2, oggetto1");
tmp.Add("List2, oggetto2");
//...
arrWeek.Add(tmp);
//...
}
}
Quindi, per accedere a ciascuna delle list, usi arrWeek[i]
Luca