Texture2D.FromStream issue on WP8

Is there any reliable way to create Texture2D from Stream? Every single approach i tried caused deadlock. Basically i download tons of images from web and then use in my app. Maybe i am missing something and there is a more common way to download images and create Textures2D from them without using Texture2D.FromStream?
I have seen a lot of topics on that subject, but none of them contain answer. Does it mean i cant port my XNA game to MonoGame Windows Phone 8 right now?

This one works:

var worker = new System.ComponentModel.BackgroundWorker();
worker.DoWork += (sender, e) => texture = Texture2D.FromStream(graphicsDevice, stream));
 worker.RunWorkerAsync();