Пользовательский интерфейс WPF (включая DataGrid) обновляется автоматически только тогда, когда связанный объект реализует INotifyCollectionChanged (для коллекций) или INotifyPropertyChanged (для отдельных объектов). Если вы хотите отобразить коллекцию объектов и автоматически обновить как коллекцию, так и свойства содержащихся объектов, у вас мало выбора, кроме наличия ObservableCollection (которая реализует INotifyCollectionChanged), которая содержит объекты, реализующие INotifyPropertyChanged.
Как вы будете создавать объекты, соответствующие этим требованиям, зависит от вас и конкретных требований / ограничений вашей модели данных.