¿Cual es mejor? array, ArrayList o List <T> (en términos de rendimiento y velocidad)

Requiero una velocidad rápida en el procesamiento de mi página. El recuento de los valores a añadir será dinámico.

¿Cuál de los anteriores es el preferido? Apoyo con una razón válida.

Edición: Por ejemplo:

string str = "a,b,c"; //Count of the number of elements in str is not fixed
string[] arr = str.Split(',');

o,

ArrayList al = new ArrayList();
al.Add(str.Split(','));

Respuestas a la pregunta(3)

Su respuesta a la pregunta