Most games (I guess all you listed) combine both approaches to reduce the amount of data to process and render.
Using one huge model is very costly, because you’ll always have to draw everything (or do lots of culling calculations).
Due to this, the probably most often used approach is drawing the raw map using one or more heightmaps (to improve performance, you’d most likely split this into “cells”).
In addition, these cells are decorated with more detailed and modeled objects, such as rocks, cliffs, bridges, houses, etc.
When drawing, you can then restrict yourself to only draw the heightmap of the current (or neighboring) cells as well as all their objects. Recent and popular examples would be games such as Skyrim or Far Cry 3.
This approach will be less attractive if you plan on doing things like indoor maps. Brush based drawing, e.g. as done by Valve’s Source engine are more suited for something like this. Overall they’ll still do the same thing: Use the rough drawing (brushes here) to create the map, objects to decorate it.
So in short: Always try to get your general map layout done with some simple method. Keep this simple, because this will be fast and allow you to cull other elements (e.g. using depth buffers, cell hierarchy, etc.). Then add the details.