3ca10488_nd_Abstract_classes_in_C_Sharp__Abstract_class
[Feature] Adding functionality (Versioning) [Interface] If we add a new method to an Interface then we have to track down all the implementations of the interface and define implementation for the new method. [Abstract class] 
If we add a new method to an abstract class then we have the option of providing default implementation and therefore all the existing code might work properly.
My Experience with Dot Net: Interfaces and Abstract classes in C-Sharp
Abstract class