In this paper we present Approximation Schemes for Capacitated Vehicle Routing Problem (CVRP) on several classes of graphs. In CVRP, introduced by Dantzig and Ramser in 1959 [14], we are given a graph G = (V, E) with metric edges costs, a depot r ∈ V , and a vehicle of bounded capacity Q. The goal is to find minimum cost collection of tours for the vehicle that return to the depot, each visiting at most Q nodes, such that they cover all the nodes. This generalizes classic TSP and has been studied extensively. In the more general setting each node v has a demand dv and the total demand of each tour must be no more than Q. Either the demand of each node must be served by one tour (unsplittable) or can be served by multiple tour (splittable). The best known approximation algorithm for general graphs has ratio α + 2(1 − ) (for the unsplittable) and α + 1 − (for the splittable) for some fixed > 1 3000 , where α is the best approximation for TSP. Even for the case of trees, the best approximation ratio is 4/3 [5] and it has been an open question if there is an approximation scheme for this simple class of graphs. Das and Mathieu [15] presented an approximation scheme with time n log O(1/ ) n for Euclidean plane R 2 . No other approximation scheme is known for any other class of metrics (without further restrictions on Q). In this paper we make significant progress on this classic problem by presenting Quasi-Polynomial Time Approximation Schemes (QPTAS) for graphs of bounded treewidth, graphs of bounded highway dimensions, and graphs of bounded doubling dimensions. For comparison, our result implies an approximation scheme for Euclidean plane with run time n O(log 10 n/ 9 ) .