You do this with Process.Start:
Process myProc = Process.Start("MyConsoleApp.exe");
//Close gracefully
Application.Exit();
In MyConsoleApp.exe, you would need to use GetProcessByName to kill your WPF app, and then Process.Start again to restart it:
Process wpfProc = Process.GetProcessesByName("MyWpfApp.exe").First();
//If you want to directly kill it
wpfProc.Kill();
//Or be nice and let it kill itself
wpfProc.WaitForExit();
//Do stuff
Process.Start("MyWpfApp.exe");
System.Diagnostics.Process on MSDN