What are the best practices regarding the use and structure of inner classes in C#.
For instance if I have a very large base class and two large inner classes should
Generally inner classes should be private and usable only by the class that contains them. If they inner classes are very large that would suggest they should be their own classes.
Usually when you've got a big inner class it's because the inner class is tightly coupled to it's containing class and needs access to its private methods.