Можно написать обработчик скачиваний — сложить все файлы для скачивания в отдельную папку на винте или в базу например — и обрабатывать чем нить типа этого:
www.mypage.com/download.aspx?file=file.zip
на странице завести OutputStream (это из Java — в .NET нужно поискать аналог) и вываливать контент файла юзеру — а подсчитывать только после успешного завершения...