The calculated distance (air line) between Charikar and Upper Dir is approximately 154 miles respectively 247 kilometers.
By car or train, the actual journey to Upper Dir is certainly longer, as only the direct route (as the crow flies) between Charikar and Upper Dir has been calculated here.