.NET Version of Clone

One of my peers wrote this commenting on how much easier it was to clone in .NET vs Java.

Within your entity/object:

        public object Clone()
        {
            object clone;
            using (MemoryStream memory = new MemoryStream())
            {
                BinaryFormatter formater = new BinaryFormatter();
                formater.Serialize(memory, this);
                memory.Seek(0, SeekOrigin.Begin);
                clone = formater.Deserialize(memory);
                return clone;
            }
        }