I have a site where users buy packages and watch video tutorials. Unfortunately that url is available from the HTML, so the user could easily download from that location. I want to prevent the user from downloading that file and he should only be able to watch from my page.
Is there a way to do this in ASP.NET or probably by configuring IIS?
Short answer, No.
Longer answer, it depend upon your purpose there are 2 possibilities.
If you want to prevent people embedding your videos in their site (thus using your bandwidth) the problem is similar to that of hot linking images. This involves things like, checking the referrer (not all user agents supply one though). Another option is to make the URL for the video user specific, e.g. temporary URL that times out, embed an anti-csrf token in the URL, check this matches a cookie, etc.
If you want to prevent downloading the actual video by a user then you can’t, see How to prevent downloading images and video files from my website? and How to prevent user from downloading or saving an image?.