The static keyword defines, that the class / property / method you declare as static does not require an previous instance of a object. In the other hand, a static method for example cannot use any instance method / instance property of the own object.
Also static defined things will be optimized by the compiler, for example that a static object is only written once in the memory and everything accesses to the same object.
Here you get perhaps more detailed informations about the static keyword:http://msdn.microsoft.com/en-us/library/98f28cdx.aspx
Also a google search would help:http://www.google.com/
I'm sorry about not answering the VB Questions, but I'm not a VB specialist and do not know how this is solved in VB.NET. Perhaps google have some more answers.
Hope this helps.
Best regards and have a nice weekend,