I have lots of entities with nested
Interesting question, considering that both List and
IList<T> there isn't much of a difference there,
ObservableCollection also implements
INotifyCollectionChanged interface, which allows WPF to bind to it.
One of the main differences is that
ObservableCollection does not have
AddRange method, which might have some implications.
Also I would not use
ObservableCollection for places where I know I would not be binding to, for this reason it is important to go over your design and making sure that you are taking the correct approach in separating layers of concern.
As far as the differences between
List<T> you can have a look here
Generic Lists vs Collection