Попробуйте использовать SuspendLayout () и ResumeLayout (false), чтобы форма не меняла свой макет до тех пор, пока изображения не будут загружены.вызовите
this.SuspendLayout();
перед Show () и установите boolians в picturebox.LoadCompleted события в true, и вызовите
this.ResumeLayout(false);
, когда все они верны.