Да, собственное окно не создается, пока оно не станет абсолютно необходимым.Что обычно происходит, когда вы устанавливаете свойство Visible формы в true или вызываете его метод Show (то же самое).Или если вы используете свойство в конструкторе, которое требует, чтобы свойство Handle было допустимым.Что редко и может быть немного хлопотно.Все классы Winforms хранят назначенные вами значения свойств (или назначенный дизайнером код) и фактически не применяют их до тех пор, пока не будет создано собственное окно.
Оптимизация обычно незначительна, но может иметь большое значениена некоторых элементах управления.Хорошими примерами являются TreeView и ListView, если вы даете им много элементов в конструкторе.Отложенная инициализация получит базовый собственный элемент управления Windows с сообщением массовой инициализации.Вместо сообщения для каждого отдельного элемента, который вы добавляете.Большая разница.Также обратите внимание, что общепринятая практика добавления элементов в обработчик событий Load формы игнорирует эту оптимизацию.Всегда поддерживай конструктора.