Come da titolo sto provando a usare questi oggetti a me ancora sconosciuti!
Ho letto più che potevo in giro a riguardo ma tempo di non averci capito nulla...

Per ora ho creato un piccolo progetto di prova che non fa altro che creare a runtime una serie di textbox (così da stressare il lettore di codice) e che infatti blocca l'applicazione per alcuni secondi durante la creazione.

Per testare il mio backgroundworker l'ho aggiunto alla mia form dal pannello oggetti (chiamandolo mioBGW) e ho buttato giù sto codice:

codice:
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        mioBGW.RunWorkerAsync()
    End Sub

    Private Sub mioBGW_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles mioBGW.DoWork
        Try
            Dim y As Integer = 3
            Dim max As Integer = 500
            For i = 1 To max
                Dim mioTxt As New TextBox
                mioTxt.Location = New System.Drawing.Point(3, y)
                mioTxt.Name = "TextBox" & i
                mioTxt.Text = mioTxt.Name
                mioTxt.Size = New System.Drawing.Size(224, 20)
                mioTxt.TabIndex = i
                mioTxt.Visible = True
                y += 25
                Panel1.Controls.Add(mioTxt)
            Next
        Catch ex As Exception
            MsgBox(ex.Message, MsgBoxStyle.Critical, "Errore in " & ex.Source)
            mioBGW.CancelAsync()
        End Try
    End Sub

    Private Sub mioBGW_RunWorkerCompleted(ByVal sender As Object, ByVal e As System.ComponentModel.RunWorkerCompletedEventArgs) Handles mioBGW.RunWorkerCompleted
        MsgBox("FINITO!", MsgBoxStyle.Information, "Conferma")
    End Sub
Però credo che non sia molto corretto
Tant'è che mi da errore:

Operazione cross-thread non valida: è stato eseguito l'accesso al controllo 'Panel1' da un thread diverso da quello da cui è stata eseguita la creazione.

Credo di non aver capito proprio niente...non esiste una guida in italiano su questi oggetti? L'MSDN non mi è stato molto d'aiuto...oppure se qualcuno può spiegarmi un po dove sbaglio...

Grazie come sempre!