The calculated distance (air line) between Marchwood and Shanklin is approximately 22 miles respectively 35 kilometers.
By car or train, the actual journey to Shanklin is certainly longer, as only the direct route (as the crow flies) between Marchwood and Shanklin has been calculated here.