Similarities
* Hide communication to remote objects behind method calls
* Use stub/skeleton approach
* Provide a Naming Service
Differences
* RMI is Java-only, CORBA is multi-language
* CORBA is more sophisticated - will have greater overhead
* CORBA offers many additional services e.g. persistence, events, application-domain services