Uploaded files in ASP.NET are fully stored in memory by default before they can be processed by server-side code. This leads to poor scalability in server when many large files are uploaded at the same time.
The ideal solution would be some way to allow the server read the file while it's being uploaded (not only when upload is finished), or a server component that stores uploaded data temporary in a temporary file or database.
FileUploadcontrol?