Design Guidelines for Developing Class Libraries عنوان مجموعه ای هست که بعضی از قسمتهای اون تقریبا مرتب با موضوعات تاپیک هست که خوندنش قطعا مفید خواهد بود . به گفته خودشون :

It is strongly recommended that you follow these design guidelines when developing classes and components that extend the .NET Framework. Inconsistent library design adversely affects developer productivity and discourages adoption.
Guidelines for NamesDescribes guidelines for naming types and members in class libraries.
Type Design GuidelinesDescribes guidelines for using static and abstract classes, interfaces, enumerations, and structures.
Member Design GuidelinesDescribes guidelines for designing and using properties, methods, constructors, fields, events, and operators. This section also describes best practices for designing parameters.
Designing for ExtensibilityDescribes guidelines for designing libraries that can be extended.
Design Guidelines for ExceptionsDescribes design guidelines for designing, throwing, and catching exceptions.
Usage GuidelinesDescribes guidelines for using arrays and attributes, and guidelines for implementing equality operators.

Internal Coding Guidelines هم مقاله ای هست که به صورت خلاصه مواردی دیگری رو پیشنهاد میکنه .