We study the assignment of discrete resources in a general model encompassing a wide range of applied environments, such as school choice, course allocation, and refugee resettlement. We allow single-unit and general multi-unit demands and any linear constraints. We prove the Second Welfare Theorem for these environments and a strong version of the First Welfare Theorem. In this way, we establish an equivalence between strong efficiency and decentralization through prices in discrete environments. Showing that all strongly efficient outcomes can be implemented through pseudomarkets, we provide a foundation for using pseudomarkets in market design.