It looks like your requirements are for a desktop application, not a Silverlight application. Ever watched ClickOnce ?
The most plausible way I can think of is to send the file to a remote server and then direct your user to that server. Most likely, this is not what you are looking for.
Then there is the opportunity to open the socket and effectively turn your Silverlight application into a server. Then open a new browser window and point it to localhost: portnum. However, you will need to implement some kind of protocol that the browser understands, such as FTP or HTTP. Which seems a little ridiculous.
source share