The new sculpting brushes and masking are both very good ways to work. The exact approach that you follow will depend upon how your work compares to the edge flows of the model. For example, if you need a sharp line that follows an edge loop, it becomes very simple to get even at low poly counts. But if your line cuts across edges, then you need high polygon counts to get those crisp edges.
One very good approach is to mask areas off, then use a deformation to inflate or resize the unmasked areas. This will normally give very clean edges. Another approach is to use the Layer or Flatten brush to sculpt raised areas. You would then use the Pinch brush to sharpen the edges.