The selection and scheduling of interdependent projects is essential to any company's planning division. Project selection and scheduling is complex due to several reasons: presence of multiple decision criteria, business and operational constraints, and project interdependencies, for instance. Three types of project interdependencies can be identified: benefit, resource and technical interdependencies. Each type of interdependency is inherently different, adding difficulty to the modeling process. The proposed mixed-integer programming model is a tool for solving the problem of selecting and scheduling interdependent projects. The model chooses, from a bank of projects, those in which it is best to invest and also recommends when to invest. It maximizes the net present value of the portfolio of selected projects, which takes into account benefits and costs savings that may result from interdependencies between any pair of projects. The model satisfies time windows for starting dates, exogenous budget limits; endogenous cash flow generation and technical interdependence through the use of precedence relations and sets of mutually exclusive projects.