We examine how liquidity and asset prices are affected by the following market imperfections: asymmetric information, participation costs, transaction costs, leverage constraints, non-competitive behavior and search. Our model has three periods: agents are identical in the first, become heterogeneous and trade in the second, and consume asset payoffs in the third. We examine how imperfections in the second period affect different measures of illiquidity, as well as asset prices in the first period. Besides nesting multiple imperfections in a single model, we derive new results on the effects of each imperfection. Our results imply, in particular, that imperfections do not always raise expected returns, and can influence common measures of illiquidity in opposite directions.