Efficient for loops when iterating collections

Ash Furrow suggests doing away with traditional for loop syntax when iterating through objects in a collection. More specifically, using enumerateObjectsUsingBlock: which results in a very straightforward and efficient code:

[array enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) 
{
  // Process 'obj' from collection
}];