Completely agree with Niya. Here's a nice simple example showing a BindingList(Of T) being serialized/deserialized while having the list be the DataGridView's DataSource.