From MSDN:
Implicit conversions might occur in many situations, including method
invoking and assignment statements.
A char can be implicitly converted to ushort, int, uint, long, ulong, float, double, or decimal. Thus that assignment operation implicitly converts char to int.