Is it possible for a running c# application to start/invoke some new arbitrary process, but only do so after the current running application is terminated?

I guess it's possible to call the new process from `Process.Start()` via `cmd.exe` and do something like `sleep 3 & c:\mynewapplication.exe` - this would giver the 'caller' some three seconds to terminate itself.

However this is a bit hacky, and was wondering if there was a neater way?