C # не имеет динамического типа массива.Однако вы можете использовать список в качестве динамического массива, учитывая, что он поддерживает индексированный доступ:
List<string> list = new List<string>();
list.Add("Hello");
list.Add("Goodbye");
Console.WriteLine(list[1]);
Взгляните на Общие списки .