This document discusses calling C++ code from C# and summarizes the UrhoSharp library which provides bindings between the C++ Urho3D game engine and C#. Key points: - C++/CLI, COM, and P/Invoke can be used to call C++ from C# - UrhoSharp exposes over 200 classes and 5000 methods of the Urho3D API to C# with similar performance - The binding is generated automatically from Urho3D header and source files using a custom binding generator - Object lifetime is managed by reference counting between the managed and native memory arenas