To me the seemingly obvious way to work with terrain is to start with contour lines then modify this with tools such as stamp for planar surfaces, artisan for organic surfaces and drape to separate into different materials etc.
However, while this works to model fast and increase level of detail, the model becomes increasingly difficult to alter, especially elements like a curved sloping road/retaining wall needs to be moved. Triangulation becomes increasingly messy and uneven.
When significant changes occur:
solution 1 is to delete the entire surface and re-model. This is often the fastest option for me, but still annoying.
solution 2 is to split the model into sub-regions that can be re-created spearately, but the region boundaries tend to change all the time, besides recreating seams between these sub-regions is time-consuming.
Solution 3 (the Vectorworks-method) is to continuously keep a 3D "skeleton" on a layer which keeps tracks of heights, and a 2D drape line layer (or Autocad) which keeps track of sub-surfaces, and update these rather than the surface itself to quickly re-create the entire surface correctly when needed. I personally find it difficult to manage the 3D skeleton layer since I can't easily change line/points (absolute) Z-value, and it keeps me from editing surface directly with artisan.
Are there different ways of working entirely? What do you find works best?