I have a somewhat large (~100K lines) C++ server application. It uses Boost (lots of smart pointer use, thread use, regex), Xerces XML libraries, some MFC for GUI, and ADO for database access. I tried to build a test build of my application using Microsoft's Managed C++. I got all my code to compile, but I can't link to either Boost or Xerces XML. Is this possible? Has anyone done this? If I ultimately go the .NET route, I would replace Boost and Xerces with functionality provided by the native .NET runtime libraries. However, that would be a massive time consuming undertaking. At this point, I just want to dip my toes in the water and observe pros/cons of .NET, and have the option of migrating to .NET piecemeal. I have solid experience with C# and Java and I am extremely experienced with C++ (10 years). My main problems with C++ are: - Compile times. On my 2.8GHz dev system, a rebuild takes ~20 minutes and even a build after making a minor change takes 45 seconds. It's amazing how VC++ build speeds really have remained so stagnant despite increases in hardware speed. I realize VC++ is the slower of the IDEs for build times. - Debugging memory corruption or thread concurrency issues. This is much easier in Java/C# and the tools for assisting are much easier to use. I spent many days trying tools such as Purify for C++ and couldn't produce any fruitful results. - Diagnosing memory usage. My server application uses lots of memory. After running for several hours under production conditions it will reach around 400MB-1.3GB depending on the tasks its doing. I'd like to get a general overview of where this memory is being used. I don't suspect blatant memory leaks (new with no delete) but instead runaway caches or legitimate usage. These issues are of course still present in C#/Java but the diagnostic tools to address these issues seem to be much better. I haven't found any usable C++ tool for this issue and I rely on manually logging data points and manually trying to infer an idea of what is happening. - Java/C# is overall a better (easier/faster to develop/maintain) development platform for this type of server application work. However, I will happily stick with C++ if I can resolve these other issues. And I am of course, concerned about any performance hit when migrating to Java/C#. We max out CPU and RAM use, so these factors aren't important. I couldn't take more than a 25% drop in efficiency. Any other suggestions on my situation?