There are three ways that you can approach it: OpenGL, BI, and/or Cycles.
I say, “and/or,” because you can in fact use more than one renderer to create a finished scene. (You can also use external renderers, but that’s another story.)
My best advice would be that you start, as soon as possible, by OpenGL Preview rendering the various shots that will make up the show, attaching labels to each strip to capture things like frame#, camera, scene, and file-name. Then, cut together the show completely, by whatever video editor you prefer. (Start at this point with using linked asset libraries; do this from the very start.) You can freely experiment with different camera angles and so forth, even though(!) the “windmill” at this point is just a (to-scale) disc and the tower is a (to-scale …) pyramid, each in their own libraries.
Then, once you know what footage you actually need, and what the audience will see and how closely and for how long, you can consider what’s best for each shot. (OpenGL itself can get you a surprisingly long way these days. In your project, it might take you all the way there.) Cycles and BI take fundamentally-different approaches to the task of rendering a scene: Cycles is especially geared toward using the GPU as a parallel arithmetic processor. Its computational approach is basically that it “converges” on a solution, and this approach can produce so-called “fireflies.” OpenGL uses the GPU for its intended purpose.
The one biggest thing to “grok” is the notion of a shot breakdown. Don’t think that you are gonna crank a render for umpteen-ours and … " … (ommmm…) … ‘there I-t is.’ " Uh uh. There will probably be several different layers of rendering, maybe produced using different techniques, merged together with the compositor. You’ll “sneak up on it.” And, by doing it that way, you’ll have control. When you commit to a full render, which really isn’t “full” at all, it should take you one step forward such that you don’t have to repeat that render.
Silly things: to animate a rotating windmill you need a layer or layer containing only the wheel, rotating only one full rotation. Capture any shadows that it casts on nearby objects but only those shadows … if you need shadows, and omit them if you don’t. Drop in as many consecutive copies as you need and the wheel spins. Skip the motion-blur. Capture “MultiLayer OpenEXR” with a vector layer and vector-blur it. Cheating, as they say, is a noble art.
As you cut your shots together, consciously direct the user’s attention. The establishing shots and the first time you see something might have considerable detail. Thereafter, the mind’s eye will continue to “see” that, especially “at a distance” and when their attention is focused on other things. Your moving rope might be a moving texture on a slightly-vibrating cylinder, and no one will stop and look too closely anyway. Be especially stingy with shadows. Shadows are expensive. There are “shadow-only spotlights” in BI that can inject shadows where you need them, and you can control their intensity and even add a tint in compositing.
What you’re doing, in all this, is buying yourself flexibility and saving yourself mountains of wall-time. You spend time where you need to spend time and save time everywhere else.