A NavByValue filter is a convenient way to refine a query using dimension values.
To do the same refinement with a RefinementFilter, you would need to look up the dimension value ID for each dimension value in the refinement and pass the IDs into the RefinementFilter. Further, there are different ways of looking up dimension value IDs depending on the version of the MDEX Engine being queried. The NavByValue filter handles these steps for you.