When you say VB, do you mean VB6 or VB.NET? If it's VB.NET then it's a .NET assembly just like any other, so you simply reference it like you would any other .NET assembly. If you mean VB6, is it a COM component? If so then you reference it just as you would a .NET assembly and an Interop library will be generated, allowing you to treat it pretty much as you would a .NET assembly.