Dies ist ein bekanntes Problem. Die Verwendung von SMO gegen .Net 4.0 wurde von Microsoft nicht abgesegnet oder angekündigt.
Es gibt eine nicht unterstützte Option, um dies zum Laufen zu bringen (fügen Sie diese zu Ihrer app.config hinzu):
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0"/>
</startup>
</configuration>