Формат метаданных изменился в .NET 4.0.Версия 2 CLR, та, которую вы получаете, когда вы нацеливаетесь на любую версию .NET между 2.0 и 3.5, не знает, как ее читать.То же самое произошло между 1.1 и 2.0.Версия 4 CLR знает, как читать старые форматы без проблем.Если у вас есть ссылка на сборку без фреймворка, которая была скомпилирована для целевой версии 4, то у вас есть для использования .NET 4.0.
Ретаргетинг существующего проекта EXE, который нев противном случае требуется ссылка на эту сборку.Добавьте файл .config в проект и вставьте его:
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0"/>
</startup>