سلام.
خسته نباشید.
در این سایت http://www.dotnetperls.com/for-foreach مقایسه ای در باره ی حلقه for و foreach صورت گرفته . گفته شده در حلقه for به آرایه در heap دسترسی پیدا میشه و foreach مقدار آرایه رو (منظروم یک خونه از آرایه رو) از حافظه heap میخونه و در متغیری در stack ذخیره میکنه زمانی که یک بار به متغیر دسترسی میشه سرعت for از foreach بیشتره به خاطر اینکه foreach متغیرهای محلی بیشتری داره. اما زمانی که نیاز داشته باشیم بیشتر از یک بار به خانه ای از آرایه دسترسی داشته باشیم حلقه for سرعتش کمتر از حلقه foreach است به این دلیل که در for هر بار باید به خانه ی آرایه در حافظه heap دسترسی داشته باشیم اما حلقه foreach بار اول به حافظه heap دسترسی پیدا میکنه و مقدار رو در متغیری در حافظه stack ذخیره میکنه و دفعات بعدی مقدار رو از stack میخونه و چون دسترسی به stack سریعتر است بنابراین سرعت اجرای حلقه foreach بالا تر هستش.
استادان بنده ممنون میشم راهنمایی کنید که آیا نتیجه گیری این سایت صحیح است یا خیر و اگر صحیح نیست لطفا در مورد این دو حلقه توضیح دهید؟