Thanks to Kendrick Li, I was struggling with same issue in C# and below code worked.
var options = new EdgeOptions();
options.AddArgument("headless=new");
options.AddUserProfilePreference("download.default_directory", downloadDirectory);
options.AddUserProfilePreference("download.prompt_for_download", false);
options.AddUserProfilePreference("directory_upgrade", true);
options.AddUserProfilePreference("browser.show_hub_popup_on_download_start", false);
var driver = new (options);