XmlSerializerは、シリアル化/逆シリアル化を実行するコードを生成し、これを一時アセンブリに格納することによって機能します。(このアプローチは、シリアライゼーション/デシリアライゼーションの繰り返しでは優れたパフォーマンスを提供しますが、(伝統的に) 最初の実行では驚くほどひどいパフォーマンスをもたらします)
衝撃的なパフォーマンスを軽減するために、VS2005 以降 (およびそれ以前はあまり知られていない手法を使用) では、ビルド時にシリアル化アセンブリを明示的に作成し、それをメイン アセンブリと共に出荷できます。
シリアル化アセンブリを作成/出荷しない場合、フレームワークはそれを探しているときに例外をスローする傾向がありますが、通常は例外をキャッチし、オンザフライでアセンブリを構築し、物事を進めます。ただし、'break-on-throw' が設定されたデバッガーで実行している場合、FileNotFound 例外がフレームワークの奥深くでスローされるのは少し憂慮すべきことです。
FileNotFound 例外が、表示されているシリアル化の失敗に直接関連していると確信していますか? シリアル化アセンブリを明示的に含めてみましたか?