There's no right answer, and it's not clear if you're talking about on the server (online database) or client (real-time, multiplayform.)
So we can address those separately:
1) Client. Unity has been suggested but the question is how multi-platform are you talking about? iPhone? Android? Xbox360 via XNA? The choice of target platform will to a degree determine the choice of languages. I personally feel that the largest overlap of platform is Flash, followed by a C# logic with custom front-end. Flash is directly available for the browser use, the Air API makes it a desktop application as well, and has implementations for all modern platforms except windows phone 7 and the 360.
C# and different front ends also offer an interesting approach. You could write all of the network and game logic classes in C#, and then implement a specific front-end for the differing platforms. Windows phone 7 and PC could be Silverlight, 360 would be XNA, and iPhone/Android could be MonoTouch/MonoDroid respectively. (However, it's still not clear how prime-time ready the mono products are.)
As pointed out above you can also do Java or Unity, but each of those has less of a multiplatform role then Flash or C#.
2) Server. C++ is the traditional route here, but honestly whatever you feel comfortable with. I've been experimenting with Python based servers for the rapid prototyping. But if you have a java client then a java server is worth looking into for code reuse. Likewise C# to C# gives a great reuse factor. One thing I've been dying to try is a C# server with IronPython embedded in it for AI/ability logic.
However as a last bit of advise given how incredibly complex an MMO is, )See Why is it so hard to develop a MMO? ) the answer really should be "Whatever language you and your team know back and front." You'll be having so many other challenges facing you, your language should be the least of your worries.