Это сложный вопрос.Вы можете использовать SetWindowsPos Windows API-вызов.Переместить заголовок с экрана.Затем при закрытии приложения или в случае сбоя его можно вернуть обратно.Этот трюк может вызвать некоторые проблемы, когда в окнах происходят фоновые события.Я использую это только при переключении между .exe - файлы форм.
Я думаю, что лучшим решением для этой проблемы является использование одной формы, но с другими UserControls .Это будет выглядеть примерно так.
public class MainForm : Form
{
public void AddView(UserControl view)
{
SuspendLayout();
Controls.Add(view);
ResumeLayout(true);
}
}