あれから調べてDisplayListを使ってみたらかなり高速になりました。ただ一度登録したリストの頂点を部分的に変えることができないようでしたので、頂点配列を使いたいと思うのですが・・

Dim Vert(100) As Double
For i = 0 To 100
Vert(i) = Rnd
Next i
Call glEnableClientState(caVertexArray)
Call glVertexPointer(3, ipnDouble, 0, VarPtr(Vert(0)))
Call glDrawArrays(bmLineStrip, 0, 100)
Call SwapBuffers(Picture1.hdc)