The assemblies that make up the .NET Framework also export many types and namespaces that are not documented. These types and namespaces generally represent either implementation details that are subject to change, vestigial code from earlier betas, or tool-specific code that happens to be managed and is therefore subject to examination via reflection. Regardless of the reason, one cannot count on undocumented types, nor expect any support from Microsoft.
That said, there is useful information to be gained from investigating these private implementation details. Examples of this include programmatic access to the GAC, predefined Win32 structures and COM interfaces (internals of SoapSuds.exe, RegAsm.exe, TlbImp.exe, and TlbExp.exe), and browser, tool, and OS integration helpers.
Many of the documented namespaces include additional undocumented types. Additionally, the following namespaces are completely undocumented:
Accessibility IEHost.Execute Microsoft.CLRAdmin Microsoft.IE Microsoft.JScript.Vsa Microsoft.VisualBasic.CompilerServices Microsoft.VisualBasic.Helpers Microsoft.VisualBasic.Vsa Microsoft.VisualC Microsoft.Vsa.Vb.CodeDOM Microsoft_VsaVb RegCode SoapSudsCode System.Diagnostics.Design System.EnterpriseServices.Internal System.Messaging.Design System.ServiceProcess.Design System.Web.Handlers System.Web.RegularExpressions System.Web.Util System.Windows.Forms.ComponentModel.Com2Interop System.Windows.Forms.PropertyGridInternal TlbExpCode TlbImpCode
To investigate these types and namespaces, use ILDasm.exe to examine the metadata and MSIL (see Appendix E to match DLLs with their namespaces).