*WARNING* - I'm a developer "in" LabVIEW, I don't develop with LV, so there are probably better examples or suggestions out there. You might want to post another question under the heading like "simple tcp server example" to catch the eye of the non-.NET LV programmers.
----
There are often easy ways to communicate between two programs IF the programs have been written in the same language (for example, Java, COM and .NET all have remoting technology, but they don't work across the languages - only within the language).
Also, you can't set up an ActiveX control inside LV that the VB.NET app can get to. The ActiveX controls in LV are created inside of LV and not accessable through the network. They are also usually meant for displaying addition pieces in the VI's front panel (like an IE browser window).
It also sounds like you are going to issuing control statements from the VB.NET application to the LV app, and data from LV to VB.NET. In this case I would recommend going with the TCP/IP protocol as it is the most common denominator between VB.NET and LabVIEW. LV would open up a port and sit and listen for incoming requests. When it gets a request, it would then go off and process the "command", returning the data back through TCP. Take a look at the simple LV TCP examples to get the idea - focus on the simple ones as complex examples are a lot more than you need to get started.
A word of warning: beware of using LV routines to "flatten" data as the flatted data is a special LV encoding and VB.NET won't know what to do with it. Just use the standard "Numeric to String" or "String to Numeric" type of formatting nodes.