Summary: Successor to
ArrayList offers generally better performance, see caution on size below
List<T>
List<T> offers generally better performance than
ArrayList as well as type safety. We recommend using List<T> over
System.Collections.ArrayList always if T is a reference type. If T is a value type there is additional cost assocated with creating a specialized version of List<T> for that value type. When T would be a value types we recommend List<T> if the savings in boxing is greater than the cost of the additional code -- this tends to happen if you store about 500 elements across all your List<T> objects.
See also:
PerfSystemCollectionsGeneric --RicoM
Even where T is a value type you are better off using List<T> rather than creating your own strongly typed collection. If using
ArrayList\IList is sufficient and the boxing concerns are not an issue, then as Rico says stick with those.
--BradA