I\'ve got an async task that is supposed to show progress during a file upload. Everything is working except that it looks like it finishes the file upload really really fast,
This is how HTTP Post is designed to work so do not expect it to give you progress details.
You can use one of the several file uploader components available in the market. They internally use flash or silverlight or iframes to show the progress.
http://dhtmlx.com/docs/products/dhtmlxVault/index.shtml
http://www.element-it.com/multiple-file-upload/flash-uploader.aspx
You will find many such others if you google a bit.
They internally use raw IO instead of http post to handle multiple files and progress notification. Yahoo and Google also uses such techniques for making attachments to mail.
If you are really feeling adventurous, you can recreate the wheel - i.e. write your own component.
Edit:
Please specify if you want to do this in a windows desktop application or a web application.