Общие коллекции являются типобезопасными - вы не можете поместить string
в List<int>
- и не требуют постоянной упаковки / распаковки с object
.
ArrayList
, с другой стороны, может обрабатывать различные элементы - в некоторых случаях это может быть плюсом.
Мое мнение: обычно я всегда использую List<T>
- если только мне действительно не нужно что-то, что может обрабатывать int, string, DateTime
и т. Д. Одновременно (очень редкие случаи).