Microsoft Visual Studio allows .NET developers to add XML documentation to every object, such as classes, methods, properties, etc. When a project is built, an XML file containing a description of the assembly can be generated (you need to set the XML file name in the project configuration). This file and the assembly in general can be analyzed with tools such as Sandcastle , but that's a heavyweight solution when all you want is a quick listing of your methods, and the description is already in XML format.

My file visual-studio-xml-doc.xsl contains XSL transformation (XPath) statements that convert the XML to XHTML for a nice display in your web browser. The XML file generated by Visual Studio must be edited to contain a single line that points to the XSL file.

    <?xml-stylesheet href="visual-studio-xml-doc.xsl" type="text/xsl"?>

Click this link to see sample XML documentation from a C# assembly in a pretty format, and right-click the link to download the XML file to see how to refer to the XSL. All classes in an assembly are described in a single XML file, and the class names are shown in red in the pretty version. Parameter names are shown in blue. The XSL file handles 'summary', 'param', 'returns' and 'exception' elements.

The goal here is to provide a free, open-source, lightweight solution. No installers, just drop the XSL file into the folder with the XML, edit the XML slightly, and double-click. The result is not perfect, but it's more concise than reading C# source code. The XML, unfortunately, does not provide the return type of a method or property (but you could include that in the 'returns' element). If you want, say, only a listing of property and method names without additional details, it wouldn't be hard to hack the XSL.

Brought to you by gocek.org!