This is from the site dotnetbull. I am blogging this here for future reference.

Interface Abstract Classes
Interface support multiple implementations Abstract class does not support multiple inheritance
Interface does not contain Data Member Abstract class contains Data Member
Interface does not contain Constructors Abstract class contains Constructors
An interface Contains only incomplete member (signature of member) An abstract class Contains both incomplete (abstract) and complete member
An interface cannot have access modifiers by default everything is assumed as public An abstract class can contain access modifiers for the subs, functions, properties
Member of interface can not be Static Only Complete Member of abstract class can be Static