Personally I'd go for road pricing based on multiple factors: purpose, congestion, distance, and urban/rural driving. That way a farmer in a Landy taking sheep to market, or a teacher driving a long way to work in her Smart car in the Peak District would pay little, but a Chelsea tractor driving through... well, Chelsea in rush hour would clock up payments like a taxi meter, and the carpenter in the next lane would pay less because he's driving a commercial vehicle. A Volunteer lifeboat crew member could have a tag which can be used at a lifeboat station to cancel his trip there and back.
At the same time, make it really inconvenient to drive a private car through any city, and massively boost public transport and pedestrian cycle facilities. Fortunately, improving active travel/public transport facilities, by definition makes it more difficult for private vehicles cars (The reverse is also true, as our cities prove).