This is inaccurate. Multiple inheritance, in O-O terms, means that a
class has two parents from different branches in the class hierarchy,
not merely that it has a parent that in turn has another parent.
All that "all classes inherit from object" means is that the
inheritance hierarchy begins with a single parent class, object, that
itself has no parent. All classes in .NET derive either from object, or
derive from a class that derives (directly or indirectly) from object.
Class B that derives from class A, then, does not derive from A _and_
object. It merely derives from A, which has, somewhere up the
hierarchy, object as an ancestor and so inherits object's methods by
the usual single-inheritance mechanism.
NK: Sorry. C# is like Java: it supports single inheritance only when it
comes to classes. Interfaces provide polymorphic behaviour outside the
hierarchical class-inheritance structure, but the downside with
interfaces is that you have to implement every method in every class
that implements the interface.