That dude in the discussion doesn't have a clue of what he is talking about, IMO. Many call themselves experts, but they are only big guns with empty shells. If you want to do some async file uploading, you could use Flash. I normally don't recommend Flash, but the SWFUpload widget is, IMO, one of the best there is.
http://www.swfupload.org/
Other than that, you could take a look at this, the code is quite ugly, but the author seems to affirm that this is cross-browser.
http://www.webtoolkit.info/ajax-file-upload.html
To answer your question: no, removing the iframe does not guarantee that the download will really stop, or that the download process has effectively been cancelled on the server side. This is because removing the iframe from the DOM does not guarantee that something, somewhere is not still using it, thus is not garbage collected.
Instead of removing the iframe, you can simply set a different target url (ex: "about:blank") that usually sever the connection with the server and ultimately stops any data transfer in progress. You can then remove the iframe after that.
However, I would suggest having a two step process, where you upload the file, along with an hidden field containing some hash value. The file is store in a temp directory on the server. When the upload is complete, you make a second request with the same hash to validate the file upload completion and finish processing the upload. This ensures that if the download is cancelled mid-way, but the file has already been uploaded to the server, that you simply don't finish the process and you can just have another process cleaning up the temporary uploaded files later on.
The first solution is simpler, but requires Flash :(