Response.Redirect è molto diverso da Response.WriteFile(fileSystemName);

Infatti nel primo caso quello che fai è proprio ridirezionare il client su un determinato link (e tutti i problemi che ne conseguono), nel secondo caso invece scrivi lo stream del file sullo stream di risposta della richiesta HTTP.
Dunque quello che ti comparirà sara un bella finestra di IE (o altro browser) che ti invita a salvare o aprire il file.

Il codice non l'ho testato ma ti assicuro che grosso modo è quello.
Devi giusto ritoccarlo per farlo funzionare nel tuo caso.

Ciao!