AsReadOnlyメソッドを使うと、Listと同じ内容をもった読み取り専用コレクション(ReadOnlyCollection)を取得することが出来ます。 このメソッドを使って作成した読み取り専用のコレクションに対しては、要素の追加・削除・変更などの操作を行うことが出来ません(行おうとするとNotSupportedExceptionがスローされます)。
なお、AsReadOnlyメソッドは元のListを読み取り専用にするものではないので注意してください。 このメソッドは単に、元のListを参照する読み取り専用のコレクション、Listに対する読み取り専用のビューを作成します。 元になったListに対しては、依然として要素の追加・削除・変更が可能です。
ReadOnlyCollectionについてより詳しくは汎用ジェネリックコレクション(1) Collection/ReadOnlyCollection §.ReadOnlyCollectionを参照してください。
配列を読み取り専用にする場合についての配列操作 §.読み取り専用化 (AsReadOnly)も合わせて参照してください。