C #: conversión personalizada a un tipo de valor

¿Es posible convertir una clase personalizada a un tipo de valor?

Aquí hay un ejemplo:

var x = new Foo();
var y = (int) x; //Does not compile 

¿Es posible hacer que suceda lo anterior? ¿Necesito sobrecargar algo enFoo ?