You should obviously prefer List (or generics in general), as they promote type safety.
The only reason why you might like to use ArrayList might be if you want to pass it into an existing (1.x) .NET method. [[ Because .NET 1.x did not support generics. ]]