I have a class that maintains list of objects of another class. List of objects is a public property. I would like to prevent users from adding and removing objects directly
You could just give them an object which always returns an enumerator that they can use to access the structure?