C#でASP.NET WebForm を使うことになりました。
そこでLINQに関する質問です。
なにぶんC#もLINQもよくわかっていないので
ご教授よろしくお願いいたします。

1) LINQ による列挙は、スレッドセーフでしょうか?

ローカル変数にメソッド構文で何らかのLINQクエリを記述して
メソッド内で使用する場合には、スレッドセーフでしょうか?
→ lock 文などは不要ですか?

2) 拡張メソッドを作成して内部で yield return 文などを使用して
LINQ のメソッド構文で使用する場合、yield return 文を
lock 文で囲む必要はありますか?

3) 以下のページの最後の方で、中信頼性とか高信頼性とかの記述が
でてきますが、ASP.NET でLINQを使う場合には、web.config に
これらの設定が必須ですか?

'https://msdn.microsoft.com/ja-jp/library/bb907622(v=vs.100).aspx

以上です