The idea of iteration retrospectives is to continuously improve the way your team develops software. Put simply, you sit together with your team at the end of each iteration and discuss what worked for the team during the iteration and what needs improvement. Additionally you derive a list of things you want to do differently in the next iteration.
To me, the benefit is obvious. You leverage the experience and creativity of the whole team for improving your process.
There is a complete book from the Pragmatic Programmers available on this topic: Agile Retrospectives: Making good teams great