using System; class foo { static void Main () { //Incorrect: does not work on MS .NET, returns System.Byte on Mono Console.WriteLine (typeof (MyEnum).GetElementType ()); //Correct: returns System.Byte on both MS .NET and Mono Console.WriteLine (Enum.GetUnderlyingType (typeof (MyEnum))); } enum MyEnum : byte { } }