C# allows a class to inherit from only one base class (single inheritance), but it can implement multiple interfaces. This design avoids the diamond problem and complexity of multiple class inheritance while maintaining flexibility through interface implementation.