Dynamic conditioning is a technique that allows one to formulate correlation models for large baskets without incurring in the curse of dimensionality. The individual price processes for each reference name can be described by a lattice model specified semi-parametrically or even nonparametrically and which can realistically have about 1000 sites. The time discretization step is chosen so small to satisfy the Courant stability condition and is typically of about a few hours. This constraint ensures needed smoothness for the single name probability kernels which can thus be directly manipulated. A flexible multi-factor correlation model can be obtained by means of conditioning trees corresponding to binomial processes with jumps. There is one conditioning tree associated to each reference names, one associated to each industry sector and a global one to the basket itself. Since the conditioning trees are correlated, the underlying processes are also mutually correlated. In this paper, we discuss a modeling framework for CDOs based on dynamic conditioning in greater detail than previously done in our other papers. We also show that the model calibrates well to index tranches throughout in the period from 2005 to the Spring of 2008 and yields instructive insights.