Is this type of scenario that CORBA was intended for and if so, is this still the best technology to use or are there better options out there.
Yes, this is what CORBA was intended to solve. Whether it’s “best” is subjective and argumentative. 🙂 I can say, from my personal experience, I don’t miss my short experience with CORBA and would suggest you explore other options.
I’ve read about XML-RPC, CORBA, and a few others but i’m not sure which of these is what i need.
As you seem to be aware, you’re looking for any technology that implements RMI (also frequently called RPC). It’s not built-in to C/C++.
On Linux, there is SunRPC. I would also recommend looking at Google protocol buffers, which provide a mechanism for serializing data as well as an interface for defining RPC services. There are several service implementations available, but I don’t have experience with the service implementations.