There is a method on the ConfigurationManager class called RefreshSection.
Refreshes the named section so the next time that it is retrieved it will be re-read from disk.
ConfigurationManager.RefreshSection("AppSettings");
The problem is, if I understand it correctly, that you set this new value outside the service that read it. So you will be forced to call this RefreshSection just before reading the value and this can be a problem for the performance of your app.