Usage of unions in the native world is pretty common. However, the same is not true for the .NET world. However, while using interop sometimes you need to fiddle around this these. In C# you go about defining unions using the Explicit layout supported