When we define a property as IEnumerable, we can only iterate through each items. But when we define a property as ICollection, we can add, edit, update and delete item from the property.
IEnumerable interface has only single method - GetEnumerator() and it must return an instance of an object of a class which implements the IEnumerator interface.ICollection inherits IEnumerable apart from it contains some more method and IsSynchronized and SyncRoot properties help to make the collection thread-safe. ICollection supports count property too.