well, we in C# have abstract base classes, and they are not the same as interfaces, remember that C# have only single inheritance, but you may implement all the interfaces you want. In addition remember that any thing called class (abstract or not) have some code, part by inherit from object, and even being abstract you may add non-abstract members to it, and interfaces don't have that code, they are just the (...) interface. By the way an interface may be generic too, don't forget that.
There is something that may help you, that's that interfaces may implement other interfaces, that's close to multiple inheritance. I've decided to read a bit about templates, and something we don't have is the specialization of the template (i.e. generics). there are some workarounds, but's not the same. ~theraot
