Нет. Это быстрее (или должно быть быстрее), когда список также реализует: RandomAccess (как это делает ArrayList, а LinkedList нет).
Однако вы всегда должны использовать последнее:
for( Object o: list ) {
}
и переходите к первому только в том случае, если у вас есть веские доказательства того, что у вас возникли проблемы с производительностью при его использовании (например, вы профилируете свое приложение и в результате вы видите, как точку для улучшения этого раздела кода). *
Не делая этого, вы рискуете не иметь возможности переключить вашу реализацию в последующий рефакторинг, если ваше приложение этого требует (потому что вы будете привязаны к идиоме for( int i = 0 ; i < list.size(); i++ )
).