Is the MeasureDistance method returns the distance in km or miles?

MeasureDistance returns the value in meters

The MeasureDistance method seems like it's not returning the driving distance, I tried with an address I am getting different result to what google map returns.

It does not return the driving distance, it returns the distance in meters a straight line between start and end location using an algorithm. The algorithm can differ from other services. If you want to know the exact driving distance you'll need to use TTMSFNCDirections