Say I have a list of Person objects (List) called persons, like this:
Person
List
persons
class Person { public int PersonId
Since Person is a reference type (class) changing name on the item in the list will change the name on the Person object and all references to that object will now see the new name. If it was a struct that would not be the case.