Achtung: Interfaces sind keine Klassen! Und zwar eben aus diesem Grund, um nämlich Mehrfachvererbung und die unerwünschten Nebeneffekte wie das Überlappen von Methoden/Eigenschaften etc. zu verhindern, was problematisch werden kann.
Ich weiß zwar nicht, wie es genau in Delphi ausschaut, jedoch kann man in C# explizit angeben, welche Methode zu welchem Interface zugeordnet ist. Desweiteren ist zu beachten, dass Interfaces nur vorgeben, welche Methoden die Klasse, die das Interface implementiert, haben soll, selbst aber nur aus Definition besteht. Basisklassen hingegen können ja selbst ausführbaren Quellcode enthalten, sofern sie nicht abstrakt sind.
Siehe dazu auch
http://www.delphi-treff.de/sprachen/...al/interfaces/ oder den in diesem Post angehängten Auszug aus meiner Fachbereichsarbeit über Objektorientiertes Programmieren in C#.