My guess is that MATLAB requires you to access it from exactly one thread. You say it works in a single threaded application, perhaps you need to start a dedicated thread for interacting with MATLAB to get this to work correctly.
See also
http://stackoverflow.com/questions/248421/thread-safety-of-matlab-engine-api
Adam Goode
2010-01-04 05:18:08