First of all, .NET, although it supports compressed files, it does not support ZIP files (not sure about .NET v4)
Anyway, I used SharpZipLib http://www.icsharpcode.net/OpenSource/SharpZipLib/ (read GPL + exceptions carefully)
This library allows you to go through ZipStream and access ZipEntry, which gives you all the information about the file.
Keep in mind that when compressing the required files, if you compress a folder, this folder will be the first entry. Not a problem, but if you want to have a clear list, write it down without folders.
Also supports encrypted passwords.
source share