OrderByメソッドは遅延実行されるため、メソッドを呼び出した時点では結果は確定していません。 OrderByメソッドの戻り値を列挙する(もしくは配列・リストに変換する)時点ではじめて結果が確定します。
そのため、次の例のように、OrderByメソッドを呼び出してその結果が確定する前に元のコレクションに変更を加えると、その変更はソート後の結果にも影響するという点に注意が必要です。
上記のように、列挙する時点でソートが行われるため、OrderByを呼び出した後に追加した要素もソートされた上で列挙されます。