Owing to their easy engagement and motivational nature, games predominantly in young age groups, have been omnipresent in education since ancient times. More recently, computer video games have become widely used, particularly in secondary and tertiary education, as a method of enhancing the understanding of some subject areas (especially in English language education, geography, history and health) and also used as an aid to attracting and retaining students. Many academics have proposed a number of approaches using video game-based learning (GBL), to impart theoretical and applied knowledge, especially in the Computer Science discipline. Despite several years of considerable effort, the empirical evidence in the GBL literature is still missing, specifically that which identifies what students learn from a serious game regarding programming constructs, and whether or not they acquire additional skills after they have been introduced to a GBL approach. Much of the existing work in this area explores the motivational aspect of video games and does not necessarily focus on what people can learn or which cognitive skills they can acquire that would be beneficial to support their learning in introductory computer programming. Hence, this research is concerned with the design, and determining the educational effectiveness, of a game model focused on the development of computational thinking (CT) skills through the medium of learning introductory programming constructs. The research is aimed at designing, developing and evaluating a serious game through a series of empirical studies in order to identify whether or not this serious game can be an educationally effective tool for learning computer programming at the CT level. The game model and its implementation are created to achieve two main purposes. Firstly, to develop a model that would allow students to practise a series of cognitive abilities that characterise CT, regardless of their programming background. Secondly, to support the learning of applied knowledge in introductory programming by demonstrating how a limited number of key introductory computer programming constructs which introductory programming students often find challenging and/or difficult to understand. In order to measure the impact of the serious game and its underlying game model, a pilot-study and a series of rigorous empirical studies have been designed. The pilot study was conducted as a freeform evaluation to obtain initial feedback on the game’s usability. A group of students following Computer Science and related degree programmes with diverse backgrounds and experience participated in the pilot-study and confirmed that they found the game enjoyable. The feedback obtained also showed that the majority of students believed the game would be beneficial in helping introductory programming students learn computational thinking skills. Having incorporated the feedback into a revised version of the game, a further series of rigorous studies were conducted, analysed and evaluated. In order to accurately measure the effect of the game, the findings of the studies were statistically analysed using parametric or non-parametric measures depending on the distribution of data gathered. Moreover, the correlations between how well students did in the game, the knowledge gain students felt, and the skills they felt they acquired after their game-play are thoroughly investigated. It was found that intrinsic motivation, attitude towards learning through game-play, students’ perception of their programming knowledge, how well students visualise programming constructs and their problem solving abilities were significantly enhanced after playing the game. The correlations of the studies provided evidence that there is no strong and significant relationship between the progress of students in the game and the computational thinking skills they felt they gained from it. It was concluded that students developed their computational thinking skills regardless of whether or not they reached the higher levels in the game. In addition to this, it was found that there are no strong and significant correlations between the key computer programming constructs and the computational thinking skills, which provides strong evidence that learning how introductory computer programming constructs work and developing computational thinking skills, are not directly connected to each other in the game environment. It was also found that students felt that their conditional logic, algorithmic thinking and simulation abilities had significantly developed after playing the game. As a result, this research concludes that the designed serious game is an educationally effective tool for a) learning how key introductory computer programming constructs work and b) developing cognitive skills in computational thinking.