List به صورت immutable و Array از نوع mutable می باشد. ضمنا در پس پرده List از مدل بازگشتی برای پیاده سازی آرایه استفاده می کند ولی Array در واقع یک باکس برای همان آرایه های عادی می باشد. بنابراین وقتی بحث دسترسی رندوم به یک خانه از آن مد نظر باشد Array مقداری سریعتر از List است (به دلیل اینکه در List باید به صورت بازگشتی یک iteration تا آن خانه مد نظر انجام شود.)
با List میتوان به صورت functional از طریق متد های foreach,map,flatMap ... استفاده کرد.