I've found answers to this question going for WCF but they're from 2013 and I was wondering if something has changed.
I write plugins for a third-party application that loads the plugins as COM. It also loads all plugins in the same context which caused problems for me in the past with my own dependency assemblies but I solved this by strong-naming all assemblies and thus being able to load different versions of the same DLL into the context (in case the user uses several of my plugins).
Now I have an external app that should send data to the plugin to be processed further. My first approach was to use OWIN as a REST self-host and just add a controller. Unfortunately that whole architecture is tightly bound to Newtonsoft.Json and those DLLs are not strongly named, i.e. cause problems when you have other plugins getting the same idea but using older/newer versions of the assembly.
So I was wondering what else I could use that ideally is built-in to .NET. Remoting? WCF after all? Something newer I'm not aware of?