This study examined the effects of prior knowledge, learner preference for control, and type of control (learner or program) on the achievement of middle-school students in a computer-based instructional program on adding and subtracting integers. Students were blocked by preference-for-control scores and randomly assigned to either a learner-control or program-control version of instruction. A significant three-way interaction (prior knowledge × preference scores × type of control) revealed that students with high prior knowledge achieved better on the posttest when their preference for control was matched with the type of control they received, whereas students with low prior knowledge achieved better when their preference was mismatched. A significant three-way interaction on attitude reflected the same pattern found in the interaction for achievement scores. The overall results indicate that matching learner preference to the type of program they receive is an effective strategy for high-prior-knowledge students but not for those with low prior knowledge.