Waterfall is putting all your tasks on a calendar for the next year and then moving them every day to reflect changing reality. You spend most of your time moving tasks around and very little accomplishing anything.
Agile is making a prioritized to-do list and checking things off as you do them and adding things as you discover them. You spend most of your time doing stuff and very little managing your list.
Scrum is a flavor of Agile that provides one fairly specific way to manage your to-do list.
You wake up. Now you realize that you are hungry.
Tell your mum you want breakfast. Your mum serves you a glass of milk.
Sit on the table, realize you want bread and not only milk. Tell your mum you want bread with your breakfast. Your mum adds a bread to your breakfast.
You eat the breakfast. Now you want lunch. Your mum makes spaggetti with sauce.
Realize you are not hungry enough. Go back in time and tell your mum to remove the bread from the breakfast.
You eat your spaggetti and feel great!
The whole idea is to go making changes with the client so as the project moves forward, the new ideas can be delivered fast.
A sprint is a time window (from 1 to 4 weeks normally) were certain tasks will be developed. At the end, the client must validate the tasks as completed and you move forward to new tasks.
Some sundry thoughts I've had throughout my career as a developer and more recently also a team leader.