Consulte FILESTREAM MVC:Descargar y cargar imágenes desde SQL Server para ver un ejemplo que muestra cómo cargar y descargar un flujo de archivos de una manera eficiente y orientada al flujo. El enfoque que está siguiendo, asignando un búfer del tamaño de todo el archivo cargado (y supongo que también hace lo mismo al servir el contenido) es muy ineficiente, su memoria de proceso ASP se triturará en pedazos por un byte tan grande [] operaciones.