DotNetZip: Adding files to archive faster in web app
Don't use ref parameters. It's very rarely needed and it's of no use in your CreateZip method.
Save the ZipFile directly to the Response.OutputStream instead of a temporary MemoryStream. This will allow you to start streaming the file while you're creating it.