In VB6, when you access a control located in a different form, a Load event raises in target form.
In VB.NET the Load event raises only when you call the Show method.
If it is essential to reproduce the same event sequence you have in VB6, then you must force a Load event by inserting a proper pragma just before accessing the control.
For example, if you access to caption property of FormCalled form from FormMain:
Private Sub cmd_ChangeCaption_Click()
FormCalled.Caption = "Hello from FormMain"
End Sub
in VB6, the Load event fires before setting of property. This isn't true in VB.NET, and you could retrieve unexpected behaviors (i.e. missing initialization of variables and control properties).
To reproduce the same sequence, you need to insert the following pragma:
Private Sub cmd_ChangeCaption_Click()
FormCalled.Caption = "Hello from FormMain"
End Sub