mi rispondo da solo spero sia utile per tutti

codice:
using System.Configuration;

            Configuration config = 
                ConfigurationManager.OpenExeConfiguration
                (ConfigurationUserLevel.None);
            
            AppSettingsSection configSection = config.AppSettings;

            try
            {
                if (configSection != null)
                {
                    if (configSection.IsReadOnly() == false && configSection.SectionInformation.IsLocked == false)
                    {
                        configSection.Settings["lastUser"].Value =  "nuovo valore" ;
                        config.Save();
                    }
                }
            }
            catch (ConfigurationException ex)
            {
                MessageBox.Show(ex.Message, "Configuration Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
mentre siete nell'ambiente di sviluppo prendo il file nomeapplicazione.exe.config non vedrete il cambiamento ma col compilato funziona