That is a pretty tough question, because there are many solutions that would be considered 'good'. There are also many questions left unanswered that would help make the final decision for most programmers. You also wouldn't have any single data structure for what you ask. It would be a combination of tools.
A dynamic scene does not necessarily mean that you can't use a static model for it. And I use 'static' loosely. What I actually mean (and what I think you actually meant) is a 'single' model. There are certainly some good algorithms out there for applying deformations to an mesh. So, just because your battlefield is a single model built in Blender, it doesn't mean you can't later carve out a crator from a bomb by messing with the mesh at runtime. Don't get me wrong. It would not be trivial to do. But it is possible.
There are two things that would deter me from using a loaded model for terrain. One is scale. If you have a very large map with a high complexity per square unit, it is going to take up a lot of memory. And if that map is large enough that it extends well beyond the view of the player, then you are keeping unnecessary information in memory to load the whole map up. If memory isn't an issue, than neither is loading the whole map. Otherwise, I would look at alternatives, which could be as simple as breaking a large model up into smaller models or as complex as procedural terrain generation.
The second thing that would deter me, is lack of talent. I am no artist. I can't sit there with a modeling tool and create fantastic alternate realities. I do however have a good grasp on math and algorithms. If I don't have an artist to create models, I won't let that stop me. I'll look at prodedural terrain generation.
And that is just the terrain. For your actual game objects that you would be interacting with, you need consider the many options for physics, collision detection and drawing. For these, you would probably want to search for spatial partitioning and batch instancing. This site has an example on model instancing you can look at for drawing a lot of the same models. For spatial partioning, I prefer loose octrees. However, there is certainly some merit in using grids or bsps instead.