Do not use the Form.Show() method. Instead use an API call:
[DllImport("user32.dll", CharSet = CharSet.Auto)]
public extern static bool ShowWindow(IntPtr hWnd, int mode);
with
mode=SW_SHOWNA
Then your main window will stay focused while the other window is shown.