for(ifade1;kosul;ifade2)
{
komut1;
komut2;
.
.
.
}

İşlem sırası:
1) ifade1 çalıştırılır.
2) Koşula bakılır. Eğer koşul sağlanıyorsa;

2.1) küme parantezleri içindeki ya da -küme parantezleri yoksa- kendinden sonra gelen ilk satırdaki komut çalıştırılır.
2.2) ifade2 çalıştırılır.
2.3) 2. adıma dönülür.
3) Eğer koşul sağlanmıyorsa küme parantezleri dışına ya da -küme parantezleri yoksa- kendinden sonra gelen ilk satırdaki komuttan hemen sonraki satıra çıkılır. Dolayısıyla döngüden çıkılmış olur.

Örnek:

using System;
class AkisKontrolMekanizmalari
{
static void Main()
{
int toplam=0;
for(int i=1;i<=3;i++){
toplam+=i;
}
Console.Write("toplam={0}",toplam);
}
}

1'den 3e kadar olan sayıların toplamı
i++ dememezin nedeni eğer bir işlem belirlemezsek i hep 3'ten küçük olur ve sonsuz döngüye girer. biz i++ diyerekher yazırma işlemi sonunda i değerini 1 arttırdık aşağıdaki gibi de kodlayabilirsin.

using System;
class AkisKontrolMekanizmalari
{
static void Main()
{
int toplam=0;
for(int i=1;i<=3; ){
toplam+=i;
i++;
}
Console.Write("toplam={0}",toplam);

}
}

Ek Olarak: ayrıntılı bilgiler: http://tr.wikibooks.org/wiki/C_Sharp_Programlama_Dili/Ak %C4%B1%C5%9F_kontrol_mekanizmalar%C4%B1