普通、列挙がスレッドセーフというとforeachブロックを抜けるまで競合が起こらないことを期待するけど
列挙処理は列挙子の複数のメンバを順番に繰り返し呼び出すから、各メソッドをスレッドセーフに実装しようが
いつでも元のコレクションの状態が変更されうるから
列挙処理全体としてはスレッドセーフにはならんという意味で「本質的には」なんじゃね
http://msdn.microsoft.com/ja-jp/library/vstudio/hwyysy67.aspx
この文脈だとそう解釈するのが自然な気がする