If you are working with shape-edited slabs in Revit, it can be difficult to coordinate with a civil engineer who is working in Civil 3D. It is fairly easy to export a Toposurface to a mesh, but solids are an entirely different matter.
Even if you do choose to export your solids as meshes, Revit will export the entire solid as individual mesh faces. This is not very useful in Civil 3D, since there is no way to isolate just the top or bottom faces.
But, of course, this can be done with Dynamo. And I have created a custom node that can extract the top and bottom surfaces of any element.
In general, Revit interacts pretty well with AutoCAD .dwg files. Things can start to get a little strange when dealing with large survey and site files, but there are workflows that will keep your Revit file and CAD links manageable (be sure to establish coordinates).
AutoCAD Civil 3D files, however, are an entirely different matter. In the past, I have noticed that sometimes certain survey dwg files would seem to split into two pieces when brought into Revit. Here is an example, where the regular AutoCAD contours and the C3D TINN have split into opposite corners of the current cad link. Even though they are both at the correct z elevation, they are in entirely different x, y locations.
It can be difficult to notice at first, because they will be miles apart, but when you hover over the link, the blue bounding box will extend much larger than it should. The left image is an unsplit link, while the middle and right are two halves of the same link (in plan).
If you want to create a landscape base from existing data, your best option is a Toposurface. Revit actually refers to this system family by 2 names: Topography (in Object Styles) and Toposurface (on the Massing/Site Ribbon). But I will simply refer to it as Topo.
When creating Topo, there are 3 options: Place Point, Create from Import Instance, and Create from Points File. But only one of these is really a valid option.