Summary
Agile development has transformed the software development landscape. It offers several advantages along with a few potential drawbacks. Agile methodologies like Scrum and Kanban allow for flexibility in project requirements. The focus on delivering working software at the end of each iteration means that quality is baked into the development process from the start.
Agile should definitely not be thought of as some rigid framework, which is where I think people run into the biggest issues with it. It's a guideline and each team should adjust it according to what works for them.
I also think people misunderstand the "adapting to change" part. This shouldn't completely alter the scope of the software development, this should just allow pivoting solutions and fixing issues from previous sprints that were found after the fact.