We develop a new method for constructing approximate decompositions of dense graphs into sparse graphs and apply it to long-standing decomposition problems. For instance, our results imply the following. Let G be a quasi-random n-vertex graph and suppose H-1, ..., H-s are bounded degree n-vertex graphs with Sigma(s)(i=1) e(H-i) <= (1 -o(1))e(G). Then H-1, ..., H-s can be packed edge-disjointly into G. The case when G is the complete graph K-n implies an approximate version of the tree packing conjecture of Gyarfas and Lehel for bounded degree trees, and of the Oberwolfach problem.
We provide a more general version of the above approximate decomposition result which can be applied to super-regular graphs and thus can be combined with Szemeredi's regularity lemma. In particular our result can be viewed as an extension of the classical blow-up lemma of Komlos, Sarkozy, and Szemeredi to the setting of approximate decompositions.