Так примерно:
While
Пока правда делаем это
For
Для этого равному этому делаем это
Вообщем то while удобно останавливать потоки (while true do), а for в основном для однопоточных приложений (for integer:=0 to 10 do) for использует указатель сколько раз выполняться, а while использует тип boolean true или false