Well, you shall avoid calling this section more than once:
SAPConfig sapCfg = new SAPConfig(); try { try { RfcDestinationManager.RegisterDestinationConfiguration(sapCfg); } catch { } SapRfcDestination = RfcDestinationManager.GetDestination(Destination);
Rather use the other variant of GetDestination():
var par = new RfcConfigParameters(); //config par here .... var dest = RfcDestinationManager.GetDestination(par);
or call the RfcDestinationManager.RegisterDestinationConfiguration(sapCfg); only once when your application starts. Yet SapRfcDestination = RfcDestinationManager.GetDestination(Destination); can be called as many times you want.