I'm not sure what you mean by size limit...
If you mean total size of variables declared in a subroutine, there is no 64k limit in VB6 or VB.NET (declare an array of bytes of size 100000 for instance).
If you mean total size of code, compiled, I'm not sure I'd know how to check that.
If you mean total number of lines of code, there is indeed a limit of about 64k. In VB6, I pasted in the following:
Visual Basic:
Dim l as Long
l = l + 1 ' Copied this line 65522 times!!!
If I try pasting one more line of code, the VB6 IDE gives me an "Out of Memory" MsgBox - not while running, just while trying to paste the line of code. If you try to insert a few blank lines in the middle, the IDE just crashes...
In VB.NET I get similar results, but they're not as consistent. Pasting in a ton of code sometimes gives me an error at design time (a MsgBox in the IDE). Other times I can run, but the results of the code are wrong. For instance, running "l = l + 1" 202,000 times gives me the answer "123,456.79" - obviously some kind of overflow bug. Running the same program a second time gives me a runtime error of "Common Language Runtime detected an invalid program.".
Of course, all of this should
never happen in "real life". A routine that large is horrible programming practice...
-Nerseus