C# cloning is the concept of taking an existing object and then creating a new object and copying the data from the original object into the new object.
There is also the concept of a shallow and a deep clone. A shallow clone will retain references to the existing objects reference by the original object, whilst a deep clone also makes copies of referenced objects.
Here is a good article on different C# cloning techniques.