To clarify, part of what makes this possible is that they extended C# with some attributes to specify that regions of code should run in a sort of high-integrity mode, where they can't be suspended for GC, etc. This allows them to do things like handle interrupts safely from C#. They call it 'Constrained Execution Regions'.