Así sin probar el código me arriesgo a decirte que creo que tu problema se soluciona si dejas así esta parte del código:
Inténtalo, la verdad es que no he trabajado con la API de Skype pero creo que tu problema claramente es la creación de tantas variables con ese FOR. Intenta cargar todos los usuarios con esta modificación, así como lo hacías al principio.
Ya nos dirás cómo te fue. Saludos.
Código (vbnet) [Seleccionar]
Dim contactos As Integer
Dim CurrentPosition As Integer = 0
If contactos < 200 And startingPosition < ListBox1.Items.Count Then
Dim oUser As new SKYPE4COMLib.User
Dim pUser As SKYPE4COMLib.User
For x As Integer = startingPosition To ListBox1.Items.Count - 1
oUser = CType(ListBox1.Items(x), SKYPE4COMLib.User)
pUser = oSkype.User(oUser)
pUser.BuddyStatus = SKYPE4COMLib.TBuddyStatus.budPendingAuthorization
oSkype.Friends.Add(pUser)
contactos += 1
pUser = Nothing
CurrentPosition = x
Next
Else
Using sw As New StreamWriter(".\contactos-temp.txt")
...
Inténtalo, la verdad es que no he trabajado con la API de Skype pero creo que tu problema claramente es la creación de tantas variables con ese FOR. Intenta cargar todos los usuarios con esta modificación, así como lo hacías al principio.
Ya nos dirás cómo te fue. Saludos.
Pregunto porque puede ser que se te haya pasado ese detalle.

, cuando no te parece la manera de responder de alguien le pasas la primera, la segunda y la tercera. Si su actitud sigue sin gustarte entonces dejas el tema del foro, ni siquiera intentas arreglar las cosas. Si te preguntas "¿por qué?", entonces te digo "Porque no es importante, y sólo peleas batallas importantes".