from the code, my guess is ;
_watcher.EnableRaisingEvents = true;
is not getting fired which is in the method
protected static void FileChanged(object sender, FileSystemEventArgs e)
this could be happening due to a exception caused at one of the below lines:
================================================
SetConfigFileAtRuntime(Path.Combine(Program.rootFolderPath, "MyApplication.exe.config"));
Console.WriteLine(String.Format("New Name : {0} {1}", DataCache.Section1Data.FirstNameString, DataCache.Section1Data.LastNameString));
================================================
hope this helps.
disclaimer : just my guess , based on a visual code review