------------------ Array------------ 1) Array is strongly typed. This means that an array can store only specific type of items\elements. 2) Array stores fixed number of elements. Size of an Array must be specified at the time of initialization. 3) No need to cast elements of an array while retriving because it is strongly type and stores specific type of items only. 4) Use static helper class Array to perform different tasks on the array.--------------------------------ArrayList------------------------------------- 1) ArrayList can store any type of items\elements. 2) ArrayList grows automatically and you don't need to specify size. 3) Items of ArrayList need to be cast to appropriate data type while retrieving. 4) ArrayList itself includes various utility methods for various tasks.