I would say that some of the main downsides of COM Interop is the
overhead of marshalling your parameters to the COM component. In
general, you should use COM interop when you need to interact with an
existing COM component. It is always preferable to have a "pure" .NET
solution, but is some cases, it might be budget- or time prohibitive to
rewrite existing components.
- Bennie