Paves way for Programming to the Interfaces by the way of Creating References to instantiate any class that has implemented the Interface.This in not possible in thru Abstract classes.
we can Implement multiple Interface in a class. C# does not support Multiple Inheritance. Through Interface we can get that.
A:Interfaces define a contract. You should use it only if you want to support a group or related functionalities in a class or struct. Otherwise there is no need to use it.