AsyncResult ar=(AsyncResult)iar; Download del=(Download)ar.AsyncDelegate; _censusDataStream=(CensusDataStream)((IMethodReturnMessage) ((AsyncResult)iar).GetReplyMessage()).ReturnValue; //DOES THE TRICK //_censusDataStream=del.EndInvoke(iar); DOES NOT WORK- bug? _ds=this.processStream(_censusDataStream.oStream); FireStatusChangedEvent(DownloadStatus.NotDownloading,_ds);thanks,