Такую задачу обычно дают в универах, да бы студенты понимали, что вообще скрывается под словом динамический массив. Ведь массив имеет ограниченное число возможных элементов с заранее неизменяемым размером, и безгранично в него невозможно добавлять их.
То есть, к примеру, если Вы создали массив, который содержит пять элементов, то увеличить данный размер динамически Вы уже не сможете, так как он является фиксированным. В этом можно легко убедиться, воспользовавшись свойством IsFixedSize.
Так какой выход, как решить тогда поставленную задачу?
Мы воспользовались методом Array.Resize который позволяет увеличивать динамически массив, но на самом деле он создает новый, увеличивая его размерность на одну еденицу.