When threading out multiple zips operations in NETCF, it is possible to get the same name twice. Shared.cs line 51 should be changed to public static string InternalGetTempFileName() { return "DotNetZip-" + Guid.NewGuid().ToString() + ".tmp"; } or something more random