This paper presents a branch-and-bound (B&B) algorithm for the proactive scheduling problem, which incorporates a degree of anticipated variability in practical projects. First, the resource-constrained proactive scheduling model is formulated. Second, solving the resource-unconstrained version of the problem with an adapted Fulkerson algorithm provides an upper bound solution. Then, the subproblems of the model are derived by introducing additional precedence relationships to resolve the resource conflict in the upper bound solution. Third, we solve the resource-constrained proactive scheduling problem with the proposed B&B algorithm. The resource conflicts found in the upper bound solution are resolved by adding additional precedence relationships. According to the problem analysis, two dominance rules are proposed for additional node fathoming with the aim of improving the algorithm. Fourth, a genetic algorithm is designed to provide an effective heuristic method for solving the research problem. Finally, we conduct an extensive computational experiment on 6,000 randomly generated instances. The obtained results show that the B&B algorithm has advantages over CPLEX and the genetic algorithm. In addition, the impacts of the dominance rules and the three key parameters on the computational time and project robustness are analysed.