.cs
        [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
        public static extern IntPtr FindWindow(
           string lpClassName, string lpWindowName);
        [DllImport("user32.dll")]
        private static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow);
        [DllImport("user32.dll")]
        private static extern bool IsIconic(IntPtr hWnd);
        // ShowWindowAsync関数のパラメータに渡す定義値
        private const int SW_RESTORE = 9;  // 画面を元の大きさに戻す
 // 外部プロセスのメイン・ウィンドウを起動するためのWin32 API
        [DllImport("user32.dll")]
        private static extern bool SetForegroundWindow(IntPtr hWnd);
.cs
 //ウインドウ名は、ウインドウの左上に表示される文字列
 //WindowsFormApplicationでのForm.Textのこと
 //ウインドウ名からウインドウのハンドルを取得する。
 IntPtr hWnd = FindWindow(null, "ウインドウ名");
 if (hWnd != IntPtr.Zero)
 {
       //最小化されていれば元に戻す
       if (IsIconic(hWnd))
       {
           ShowWindowAsync(hWnd, SW_RESTORE);
       }
       //最前面に表示する
       SetForegroundWindow(hWnd);
 }