You can use AutoIT tool to do this.
Use below code in AutoIT .Au3 file to upload.
sleep(1000)
If WinExists("[TITLE:Open]") Then
Local $hWnd = WinWaitActive ("[TITLE:Open]", "",15)
WinActivate($hWnd)
;WinWaitActive("Open", "", 10)
ControlFocus("Open","","Edit1")
ControlsetText("Open","","Edit1",$CmdLine[1])
ControlClick("Open","","Button1")
ElseIf WinExists("[TITLE:File Upload]") Then
Local $hWnd = WinWaitActive ("[TITLE:File Upload]", "",15)
WinActivate($hWnd)
;WinWaitActive("Open", "", 10)
ControlFocus("File Upload","","Edit1")
ControlsetText("File Upload","","Edit1",$CmdLine[1])
ControlClick("File Upload","","Button1")
Else
Local $hWnd = WinWaitActive ("[TITLE:Choose File to Upload]", "",15)
WinActivate($hWnd)
;WinWaitActive("Open", "", 10)
ControlFocus("Choose File to Upload","","Edit1")
ControlsetText("Choose File to Upload","","Edit1",$CmdLine[1])
ControlClick("Choose File to Upload","","Button1")
EndIf
And then use below code in you C# code to invoke it.
String sExe=(<EXE file path>+" "+<Upload file path>);
Runtime.getRuntime().exec(sExe);
Thread.sleep(5000);