Небольшая, но существенная разница в выходных данных Reflector (а также проверка аргументов и дополнительный уровень интернализации, упомянутые в ответе CraigTP и его комментариях):
public static IEnumerable<int> Range(int start, int count) {
for(int current = 0; current < count; ++current) {
yield return start + current;
}
}
То есть вместо другой локальной переменной они применяют дополнительное прибавление к каждому доходу.