Agreement:
An agreement is a broader term that encompasses any understanding between two or more parties about something specific.
Can be informal or formal, written or oral.
Requires certain elements to be present,
Agreement is not enforceable by law.
Contract:
A contract is also an understanding between two or more parties, a specific type of agreement that is legally binding.
Usually formal and written.
Contract must be legally binding. Requires certain elements to be present,
Contract is enforceable by law.