Да, можно изменить размер массива. Например:
int[] arr = new int[5];
// increase size to 10
Array.Resize(ref arr, 10);
// decrease size to 3
Array.Resize(ref arr, 3);
Если вы создаете массив с помощью метода CreateInstance (), метод Resize () не работает. Например:
// create an integer array with size of 5
var arr = Array.CreateInstance(typeof(int), 5);
// this not work
Array.Resize(ref arr, 10);
Размер массива не является динамическим, даже мы можем изменить его размер. Если вам нужен динамический массив, я думаю, что вместо него можно использовать универсальный список.
var list = new List<int>();
// add any item to the list
list.Add(5);
list.Add(8);
list.Add(12);
// we can remove it easily as well
list.Remove(5);
foreach(var item in list)
{
Console.WriteLine(item);
}