В чем отличие полиморфизма от реализации интерфейса?
Тут, на самом деле, необходимо чётко определить границы. 
Есть ООП как парадигма программирования. Одна из концепций ООП называется полиморфизм. Существуют различные реализации этой концепции в языках программирования. 
В C++ есть несколько реализаций полиморфизма. Вам, на данном этапе, скорее всего интересен только полиморфизм, основанный на подтипах. Это означает, что вызывающий код может работать с набором типов из определённой иерархии, без знания о том, какой это конкретно но тип: базовый или подтип.
Касательно интерфейсов: в C++ их нет на уровне языка, как отдельной сущности. Однако же разница между интерфейсом и абстрактным классом никуда не делась.
Пример "обычного полиморфизма":// Это "интерфейс", который представляет собой набор операций, которые можно произвести над объектом
// В данном случае, по объекту можно постучать
class IKnockable {
public:
    virtual ~IKnockable() = 0;

    // Само по себе действие: "постучать"
    virtual void knock() const = 0;
};

// Реализация интерфейса классом Door
class Door : public IKnockable {
public:
    // ...
    void knock() const override { std::cout << "door" << std::endl; }
    // ...
};

// Реализация интерфейса классом Window
class Window : public IKnockable {
public:
    // ...
    void knock() const override { std::cout << "window" << std::endl; }
    // ...
};

// ...

// Какая-то функция, которая может постучать  по каждому объекту из списка, 
// не имея представления о том, что же это за объект
void knock(const std::vector<std::shared_ptr<IKnockable>> &knockableObjects) {
    for (auto &&knockableObject : knockableObjects) {
        knockableObject->knock();
    }
}

// ...

std::vector<std::shared_ptr<IKnockable>> v = {std::make_shared<Door>(), std::make_shared<Window>()};
knock(v); // Сначала напечатает "door", потом напечатает "window"
Ответ на ваш изначальный вопрос: это понятия из разных областей, одно из теории типов, другое из языков программирования. Интерфейс -- это одно из средств в языках программирования, для реализации определённого типа полиморфизма.
Полиморфизм - это создание дочерних классов, каждый из которых является разновидностью базового.
Реализация интерфейса всего лишь означает, что класс умеет давать ответы на некоторый набор вопросов. При этом являться он может быть чем угодно.
Например, класс офисной мебели может иметь подклассы - стулья и столы, каждый из которых является мебелью. При этом любой предмет в офисе должен реализовать интерфейс инвентаризации - выдавать свой инвентарный номер, чем бы он ни являлся.