Самое главное в том, что интерфейсы позволяют отделить функциональность от реализации. То есть в отличие от абстрактных классов, которые могут содержать некую реализацию в членах, интерфейсы же представляют собой голый функциональность, читай: просто набор методов и пропертей для обращения к нему, и все. Никакой реализации.
habrahabr.ru/post/30444