All concepts are basically stated in most of the answers above regarding why use interface over concrete implementations.
IList defines those methods (not including extension methods)
IList MSDN link
- Add
- Clear
- Contains
- CopyTo
- GetEnumerator
- IndexOf
- Insert
- Remove
- RemoveAt
List implements those nine methods (not including extension methods), on top of that it has about 41 public methods, which weighs in your consideration of which one to use in your application.
List MSDN link