از Return File استفاده کنید ( برای فایل های با حجم بالا باید از webconfig ، طول maxRequestLength و maxAllowedContentLength رو افزایش بدید ) :
public class DownloadController : Controller
{
public async Task<ActionResult> Download(int id)
{
var fileName = "YourFile.mp3";
// Find File MIME Type
var contentType = MimeMapping.GetMimeMapping(fileName);
// Destination Path
var destPath = Path.Combine(Server.MapPath("~/Download"), fileName);
// Store File Bytes
var bytes = System.IO.File.ReadAllBytes(destPath);
// Make Download Link For User
return File(bytes, contentType, fileNameToSave);
}
}