title: Is there a faster way to copy a file other than File.Copy
body: <p>It takes about 2 minutes to do a <code>File.Copy(src, dest);</code> for a 1.6GB File from Folder A to Folder B on the same drive.  Is there a faster way to do this in C#/.NET in code (w/o hardware) - Something with stream, threading etc?</p>
  
  <p>Would a filestream be quicker?  How about a class that chunks up the file using a threadpool, and reads a range of bytes/writes a range of bytes [that sounds like a great way to corrupt the file, but integrity is not priority 1 here, its speed :-)]</p>
  
  <p>I have searched but everyone says use File.Copy, but it's slow (as slow as Windows Copy) - I would prefer not to use a 3rd party tool.</p>
  
  <hr>
  
  <p>Here are some answers to some of the questions:</p>
  
  <p>Copy time comparison:</p>
  
  <pre><code>&gt; C# : 2.15m  
  &gt; Windows Explorer: 2.53m  
  &gt; TeraCopy: 2.26m
  &gt; FastCopy: 2.24m
  </code></pre>
  
  <p>Ok, those are not averages and I know they may change slightly on subsequent runs, but I really thought there would be a faster way to copy a file since I assumed that Windows was doing additional security and integrity checks :-(</p>
  
  <p>I'm still hoping for some good answer (like 'oh yea, files over 1.5GB will be <em>x</em> faster if you do buffer <em>m</em> and turn off security <em>n</em>') -- ok, I'm just wishing at this point.</p>