Это очень сложно (ну, это было в IIS6). Вам нужно написать HttpModule для перехвата загрузки и обработки, затем, используя общий размер входящего файла (он находится в заголовке запроса), вычислить, сколько байтов в секунду вы получаете, и затем вы можете вычислить сколько времени осталось.
Однако вы не можете сделать ничего с помощью только файла с выделенным кодом - файл уже загружен и доступен к тому времени, когда запрос попадает в обработчик asp.net.