string path = "c:/temp/"; path = path.Replace("/", "\\"); FileInfo fileInfo = new FileInfo(path); //check if directory exists so that 'fileInfo.Directory' doesn't throw directory not found ProcessStartInfo pi = new ProcessStartInfo("explorer.exe") { WindowStyle = ProcessWindowStyle.Normal, UseShellExecute = true, FileName = fileInfo.Directory.FullName, Verb = "open" }; try { Process.Start(pi); Thread.Sleep(500); // can set any delay here SendKeys.SendWait(fileInfo.Name); } catch (Exception ex) { throw new Exception(ex.Message, ex); }