That is one way to do it, another is to load a second scene in additively with the bits you're interested in. That might work out better if you want to position things visually. You're still responsible for deleting the relevant objects and calling Resources.UnloadUnusedAssets() after that.
A third option is to use AssetBundles, but I can't see much of an advantage over putting stuff in "Resources".
Don't forget to call Resources.UnloadUnusedAssets after destroying your loaded sprites, thats what will actually free the textures, etc.