Any actual data representation in a specific format is Data Structure i.e. Binary Tree, Link List etc.
Now coming to Abstract Data Type, ADT is a mathematical model of a data structure which contains a set of its instances, with: a specific interface - a collection of signatures of methods that can be invoked on an instance, a set of axioms that define the semantics of the methods. Typical example could be Lists, Trees, Stacks
Now Lets construct a Rational Number ADT -
Construction: Create an instance of a rational number ADT using two integers, a and b, where a represents the numerator and b represents the denominator.
Operations: addition, subtraction, multiplication, division, exponentiation, comparison, simplify, conversion to a float number.
Now lets try to explain using a common example -
Take a List ADT, A List is an abstract data type with well-defined operations (add element, remove element, etc.) while a linked-list is a pointer-based data structure that can be used to create a representation of a List and can be called Data Structure.