1) se dichiari un bottone, nel FlowLayoutPanel potrai aggiungere più bottoni ma tutti uguali.
Soluzione: dichiara una lista di bottoni
2) per leggere le successive stringhe hai bisogno di un ciclo
3) la ricerca deve partire dopo l'ultima stringa trovata
4) termini la ricerca al primo IndexOf con risultato -1 (non trovato)
5) la tua stringa di ricerca è = " "" " (spazio virgolette spazio), la stringa di input: line, dovrà terminare con uno spazio se vuoi che anche l'ultima stringa sia rilevata...
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim line As String = "luca sta correndo "" dietro al pallone "" mentre lucia "" va in bici spensierata "" , marco mangia "" un panino "" "
Me.Text = line
Dim button = New List(Of Button)
Dim extract As String = ""
Dim start As Integer
Dim [end] As Integer = 0
Do
start = line.IndexOf(" "" ", [end] + 1)
If start = -1 Then Exit Do
[end] = line.IndexOf(" "" ", start + 1)
If [end] = -1 Then Exit Do
extract = line.Substring(start + 2, [end] - start)
button.Add(New Button) ' creo un nuovo bottone e lo aggiungo alla lista
FlowLayoutPanel1.Controls.Add(button.Last) ' nel FlowLayoutPanel aggiungo l'ultimo bottone creato
button.Last.Width = 300
button.Last.Height = 30
button.Last.Text = extract
Loop
End Sub
End Class