Usually, you create assets each in their own blend file (it helps keeping things tidy, version controlling and also helps with performances thanks to smaller files faster to work with and being able to dynamically load/unload things as you need). Then you link them into a new file where you build the whole "final" scene.
In VFX / feature / series production, you often have the layout scene done first, which is where the initial placement of every asset is done and a very rough "layout" animation is done. Once validated, the scene is "locked", the downstream departments start their own work from that scene. First one being usually Animation. Though, that's how it's supposed to happen, in practice the timeline rarely is respected, things get messed up and then we have lots of things to fix after the fact x)
Working with Scenes
In Blender, you can use Scenes to do within one file what you could do from multiple files. Making a linked scene is the same final result as creating a new file, deleting everything and then linking-in every object from another scene. But instead of doing that in a new file, you do it in a new scene in the same file.
I am personally not a fan of this method. Because you lose some of the advantages of just linking individual assets in a single scene file I mentioned above. But it also has some benefits, like centralizing data, making it easier for compositing. And for smaller scale projects that don't really require having everything isolated, it's a good meeting point between doing everything in one file with a giant scene and doing everything in different files.
If you need to make a duplicate scene, I'd always advise using linked data as much as possible, at least for performance and storage sake. You can always turn individual assets to full copies if needed, but the other way around isn't as simple.
Usage of Linked Data
Regardless of if you manually link external data into a file or create a scene with linked data, the end result is objects with linked data.
Linked data is non-editable by default, but you can make "library overrides" on them to be able to gain some control over the asset in the scene you are in.
That is how you are able to animate a linked character rig for example.
Select a linked character, go to the menu Object > Library Override > Make, and then you have your animatable rig that is still linked.