Its easiest to start with what everyone is familiar with, cloning from a VMware template within vCenter using native VMware functionality. With this method the VM homedir is created, VMX & VMDK template files are copies, and registered as a VM.
The copy offload VAAI capability assists, by offloading the copy from the host to the array (which might actually be array to host to array).
When deploying a VM with the provisioning and cloning capability of the VSC2 (aka the RCU) NFS & VMFS are a bit different.
With VMFS the VM is cloned using VMware's tool and the proceedure is followed by a NetApp dedupe operation. This process for a single VM results in automatted storage savings. Its a tad bit beeter when deploying VMs in bulk, like with VDI. In this situation the datastore is built and then cloned, resulting in mass VM cloning. VAAI applies here as it does without the NetApp plug-in.
With NFS the VM is cloned using NetApp's single file clone. The operation takes about 2 seconds to complete, the IO is offloaded from the host, and the VM is storage efficent as the cloning results in a pre-deduplicated VM. I should mention if the template or source VM is not on the NFS datastore, then there is a process where the source VM is cloned to the datastore, so the first one may take longer to complete then subsequent VMs.
There's more coming down the pipe relative to vStorage APIs for both VMFS & NFS which will continue to refine these processes.
If you need more info, see these blog posts:
I hope this info helped.