¿Porque deberia estar cifrado el campo CLAVE?
Por seguridad, en caso de que azares del destino tu base de datos pueda ser vista por otro usuario este no identifique la clave de los otros usuarios.
Si un usuario olvida su password lo que debes hacer es permitirle crear uno nuevo o en su defecto tu se lo creas, se lo envias y que el lo cambie cuando ingrese a la aplicación.
Y no creo que sea posible enviar el password original ya que para ello deberias tenerlo guardado en algun lugar y eso ya es una falla de seguridad.
El MD5 es bueno y el cifrado retorna 32 caracteres existe el SHA segun tengo entendido es mas seguro ya que el resultado es mas largo pero no tengo idea como usarlo
En esta URL hay una clase que retorna el caracter ya cifrado con MD5:
http://www.dotnetcr.com/index.aspx?I...5-en-NET-con-C
El MD5 es una muy buena opcion para cifrar y muy seguro