I've had a growing number of people inquire about how to write an interop-debugger with ICorDebug. My goal here is to discourage you from doing that. (This reminds me of one of my college classes. On day one, the acting-Prof launched into a great sermon "Why you should drop this class now". It turned out to be a great class).
Here are some reasons that you should not try to write an interop debugger:
(Ok, so 4-7 are all under the same umbrella. That's because I really want to emphasize that it's complicated)