Вы всегда должны использовать List<TypeOfChoice>
(введено в .NET 2.0 с обобщениями), так как это TypeSafe и быстрее, чем ArrayList
(без ненужной упаковки / распаковки).
Единственный случай, когда я мог бы подумать о том, где ArrayList может быть полезен, это если вам нужно взаимодействовать со старым материалом (.NET 1.1) или вам нужен массив объектов другого типа, и вы загружаете все как объект - но вы могли бы сделайте последнее с List<Object>
, что, как правило, лучше.