こんなのやってみた。でかいサイズも大丈夫。
_RowsCount = 0
Dim sBuf(Int16.MaxValue) As Char
Dim rBuf As StreamReader = New StreamReader(”c:\hogebig.txt”)
Do Until (rBuf.EndOfStream)
rBuf.ReadBlock(sBuf, 0, Int16.MaxValue)
_RowsCount += UBound(CType(sBuf, String).Split(CChar(vbCrLf)))
If Not (CType(wBuf, String).EndsWith(vbCrLf)) Then _RowsCount -= 1
Loop