Nested loops are easy to write.

Getting out of them cleanly isn't always as easy.

Consider a simple grid search:

for (int row = 0; row < grid.Height; row++)

{