All pupils, able children included, need to be taught strategies to enable their thinking skills to progress. They also need help with developing different approaches to problem solving. A sustained piece of work that requires perseverance, logical strategies, refinement of method and extension of the original task is not the same as a straightforward quick-fix type problem. Both types of problem soloving need to be taught. This text presents a series of activities that can be used with whole classes to provide a curriculum for the teaching of problem solving and the development of thinking skills. Each tried and tested investigation is clearly explained with ideas on how to introduce the task to a class, full solutions and resource sheets.