System.Threading.Thread t = new System.Threading.Thread(() => {
System.Threading.Thread.Sleep(100000);
System.IO.File.Delete(path);
});
t.Start();
It's not 100% robust though and goes without saying that "path" has to be a path on the server, you can't delete client-side files. Also haven't tried this with core but according to the docs it should still work.