A zero-one integer linear programming model is proposed for selecting and scheduling an optimal project portfolio, based on the organization's objectives, and constraints such as resource limitations and interdependence among projects. The major contribution of the paper is that the proposed model not only suggests projects that should be incorporated in the optimal portfolio, but it also determines the starting period for each project. Scheduling considerations can have a major impact on the combination of projects that can be incorporated in the portfolio, and may allow the addition of certain projects to the portfolio that could not have been selected otherwise. Moreover, the model handles situations that frequently happen in real world applications, in which the amount of available and consumed resources varies in different periods. An example problem is described and solved with the proposed model to illustrate the approach, and some areas for future research are discussed.