There's the remoting approach to make many AppDomain
work together transparently, but I would avoid it as it gets too complex and there're easier approaches.
Another good approach is using message queues and suscribing to them so it can be a good way of coordinating various processes easily.
Also, ASP.NET Web API self-host is easier to use and implement compared to WCF self-host.
In my opinion, I would go with the ASP.NET Web API approach.