Simple link - Download!
Form - cannot pass query string
Button with onclick - popup maybe blocked
Button with onclick - same window - works too
Using javascript to simulate click - Add a link dynamically and click on it in the background
Using iframe
With download attribute
Mozilla file - Download from mozilla
Using ObjectUrl - downloads whatever the server returns
Using data scheme