Agile is an iterative and flexible approach to software development that focuses on collaboration, customer feedback, and delivering incremental value. It differs from Waterfall, which is a sequential and rigid approach that plans the entire project upfront.