There are several unpleasant implementation details about a VB6 object that makes them difficult to use correctly in a C# service. VB6 objects are COM objects that are apartment threaded. Which is an expensive word that means that they are not thread-safe and COM ensures that they are used in a thread-safe way.
A C# service almost always creates threads that are not hospitable to apartment threaded objects. COM will create a new thread to give such an object a safe home. That's expensive, a new thread costs a megabyte of virtual memory.
Furthermore, such an object will only be unloaded (and the thread will only stop running) when the garbage collector runs. You can easily run into a problem if you make a lot of calls on the VB6 object but don't yourself allocate a lot of .NET objects. Which stops the GC from running often enough to keep you out of trouble with all of these threads getting created and swallowing a bunch of virtual memory. You'll get the OOM kaboom when you've created about 1800 of them, give or take.
Specific workarounds are:
Use the Thread.SetApartmentState() method to switch the thread to STA before you start it. That stops COM from creating that helper thread. Do note that common service techniques like using a Timer to get the service running are not suitable, you have to create a Thread in the OnStart() method.
You may have to call Application.Run() to start a message loop, a requirement for STA threads. That tends to be a bit tricky to do in a service, you get little help from the project template to get the plumbing in place. You may get away without pumping but you have to be sure to make all of the calls on the VB6 object on the same thread that created it. The diagnostic for getting this wrong is deadlock.
If you've determined that the GC doesn't run frequently enough (use Perfmon.exe to look at the .NET counters) then you may have to help and call GC.Collect() to get the VB6 object unloaded.
Not that easy to get everything right here. If you've been contemplating getting that VB6 code updated then now would be a good time.