Для дебага полезная штука - написать свой Proxy:
[System.Diagnostics.DebuggerTypeProxyAttribute(typeof(DebugClass))] public class YourClass { ... }
Где DebugClass - это отдельный класс, который может содержать геттеры и поля. Еще у него должен быть конструктор, который будет принимать инстанс YourClass.
Это сильно помогает при дебаге сложных штук.