Devi creare una classe personalizzata del controllo WebBrowser e instanziarla nella Form di utilizzo:

codice:
Public Class WebBrowserArray
    Inherits System.Collections.CollectionBase
    Private ReadOnly HostForm As System.Windows.Forms.Form

    Public Event DocumentCompleted(ByVal url As String, ByVal container As Integer)
    Public Event ProgressChanged(ByVal Maximun As Integer, ByVal Current As Integer)
    Public Event Navigating(ByVal url As String)
    Public Event Navigated(ByVal url As String)

    Public Sub New(ByVal host As System.Windows.Forms.Form)
        HostForm = host
    End Sub

    Public Function AddNewWebBrowser(ByVal index As Integer, ByVal controllo As Windows.Forms.Control) As System.Windows.Forms.WebBrowser
        Dim aWebBrowser As New System.Windows.Forms.WebBrowser()
        Me.List.Add(aWebBrowser)
        HostForm.Controls.Add(aWebBrowser)
        aWebBrowser.Tag = index
        aWebBrowser.Name = "WebBrowser" & index
        aWebBrowser.Parent = controllo
        aWebBrowser.Dock = DockStyle.Fill
        AddHandler aWebBrowser.ProgressChanged, AddressOf ProgressChangedHandler
        AddHandler aWebBrowser.Navigating, AddressOf NavigatingHandler
        AddHandler aWebBrowser.Navigated, AddressOf NavigatedHandler
        AddHandler aWebBrowser.DocumentCompleted, AddressOf DocumentCompletedHandler
        Return aWebBrowser
    End Function

    Private Sub ProgressChangedHandler(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserProgressChangedEventArgs)
        Try
            RaiseEvent ProgressChanged(e.MaximumProgress, e.CurrentProgress)
        Catch ex As Exception
        End Try
    End Sub

    Private Sub NavigatingHandler(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserNavigatingEventArgs)
        Try
            RaiseEvent Navigating(e.Url.AbsoluteUri)
        Catch ex As Exception
        End Try
    End Sub

    Private Sub NavigatedHandler(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserNavigatedEventArgs)
        Try
            RaiseEvent Navigated(e.Url.AbsoluteUri)
        Catch ex As Exception
        End Try
    End Sub

    Private Sub DocumentCompletedHandler(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs)
        Try
            RaiseEvent DocumentCompleted(e.Url.AbsoluteUri, sender.tag.ToString)
        Catch ex As Exception
        End Try
    End Sub

    Default Public ReadOnly Property Item(ByVal Index As Integer) As  _
     System.Windows.Forms.WebBrowser
        Get
            Return CType(Me.List.Item(Index), System.Windows.Forms.WebBrowser)
        End Get
    End Property

    Public Overloads ReadOnly Property Count(ByVal Index As Integer) As Integer
        Get
            Return Me.Count
        End Get
    End Property

    Public Sub Remove()
        ' Check to be sure there is a button to remove.
        If Me.Count > 0 Then
            ' Remove the last button added to the array from the host form 
            ' controls collection. Note the use of the default property in 
            ' accessing the array.
            HostForm.Controls.Remove(Me(Me.Count - 1))
            Me.List.RemoveAt(Me.Count - 1)
        End If
    End Sub
End Class
Nella form in cui hai inserito un TabControl vuoto:

codice:
 MyWebBrowserArray = New WebBrowserArray(Me)
 MyWebBrowserArray.AddNewWebBrowser(TabControl1.SelectedIndex, TabControl1.TabPages.Item(TabControl1.SelectedIndex))
            MyWebBrowserArray.Item(TabControl1.SelectedIndex).Navigate("http://forum.html.it")
a te il resto.....