The connections file is saved first to a temporary file (without encryption) and then that file is encrypted and saved to another file. The temporary file is overwritten then with the encrypted contents but this will leave recoverable password information lying around on the hard disk.
The encryption is mostly good- AES128 with a random IV. However the conversion from a password to AES key is just MD5. This means that someone can steal the encrypted configuration file and try to brute force the password relatively quickly. While there is no protecting against a really poor password this wouldn’t help protect a moderately poor password. Could you implement something PBKDF2 though System.Security.Cryptography.Rfc2898DeriveBytes?
I can then let people in my organisation use the tool!