The fact that it's from My.Settings is irrelevant. A StringCollection is a StringCollection, and a StringCollection is basically the same as any other collection. If you want to get the String at index 3 then that's exactly what you do:
vb.net Code:
myString = myStringCollection(3)
I think what you want is actually simpler than you think. You can use a For Each loop and then use the current item inside the loop several times, e.g.
vb.net Code:
For Each str In My.Settings.MyStringCollection
'Use str here to create a menu item.
'Use str here to create a tool tip.
Next