[Edit]
My original-question was \"Why to decide between static and non-static? Both do the same...\"
Unfortunately it was edited to a C#-specific question wh
In general, I would say that "copying" oneself, as far as an object is concerned, usually means cloning one's data into a new object. The "copying" described here is something the filesystem is doing on your behalf, not the object. As such, I'd make it a static method and not a method on a Document instance.