Problem definition: Kidney paired donation programs allow patients registered with an incompatible donor to receive a suitable kidney from another donor, as long as the latter’s co-registered patient, if any, also receives a kidney from a different donor. The kidney exchange problem (KEP) aims to find an optimal collection of kidney exchanges taking the form of cycles and chains. Methodology/results: We develop the first decomposition method that is able to consider long cycles and long chains for projected large realistic instances. Particularly, we propose a branch-and-price framework in which the pricing problems are solved (for the first time in packing problems in a digraph) through multivalued decision diagrams. We present a new upper bound on the optimal value of the KEP, obtained via our master problem. Computational experiments show superior performance of our method over the state of the art by optimally solving almost all instances in the PrefLib library for multiple cycle and chain lengths. Managerial implications: Our algorithm also allows the prioritization of the solution composition, for example, chains over cycles or vice versa, and we conclude, similar to previous findings, that chains benefit the overall matching efficiency and highly sensitized patients.