Q:

C# Add variable value to list name

Is it possible to add a variable to a list name when using it?
Something like this:
string id = "1"; //Could be 2
List<string> List1 = new List<string> {"1","11" };
List<string> List2 = new List<string> {"2","22" };

foreach (var element in List+id)
{ //code here }

IDs could be a dozen different values, so I didn't even try with regular if(). Would that be the only way?

A:

Use a dictionary:
var dict = new Dictionary<string, List<string>>();
dict.Add("1", new List<string> {"1","11" });
dict.Add("2", new List<string> {"2","22" });

Then you can do
foreach (var element in dict[id])
{ 
}

