Well let me draw a clear line between the two:
Interface: An interface is used to declare the mandatory class members and methods required in a class. Classes implementing this interface then can declare and implement the methods of this interface according to their need. Also, you can implement any number of interfaces as you want.
Abstract Class: An abstract class is used generally to obtain a default implementation. Classes extending an abstract class needs to implement just its abstract methods and members. Unlike interfaces, you can extend only one abstract class at a time.