icloneable

¿Por qué no ICloneable?

¿Hay alguna razón particular por la que un genérico ICloneable<T> no existe? Sería mucho más cómodo, si no tuviera que lanzarlo cada vez que clone algo.

¿Por qué debería implementar ICloneable en c#?

¿Puedes explicarme por qué debo heredar de ICloneable e implementar el método Clone()? Si quiero hacer una copia profunda, ... ¿Por qué debo heredar de ICloneable? ¿Cuáles son las ventajas? ¿Es solo cuestión de hacer que el código sea "más legible"?