Только поля, к которым применен атрибут OptionalFieldAttribute, должны игнорировать недостающую информацию во время десериализации. Простое удаление этого атрибута должно вызвать исключение и привести к тому же поведению, что и в .NET Framework 1.1.
Обновление:
Преступник должен быть свойством AssemblyFormat класса BinaryFormatter, который по умолчанию равен FormatterAssemblyStyle.Full в 1.1, но по умолчанию равен 2.0 FormatterAssemblyStyle.Simple.
Фактически, установка этого параметра в FormatterAssemblyStyle.Simple в 1.1 приведет к тому же поведению, что и в 2.0: исключение не выдается. Наконец, в .NET 2.0 у вас есть атрибут OptionalFieldAttribute, который будет более детализированным.
Так что установите это свойство в FormatterAssemblyStyle.Full и посмотрите, что оно делает.
См. Также здесь .