In non-Clickonce cases, there is no automatic upgrade - you have to call Upgrade yourself. Here is one idea for determining when to call Upgrade:
Have a boolean setting called CallUpgrade with a default value of true. When your app starts up, do the following:
Properties.Settings.Value.CallUpgrade = false;
This will ensure that Upgrade( ) is called only the first time the application runs after a new version is deployed.