The C programming course is mandatory for undergraduate engineering students enrolled at universities in Palestine. The programming courses are taught by applying a traditional learning method in which the programming concepts are explained theoretically and minimal practical work is applied. In addition, students receive either no formative feedback or minimal manual delayed feedback after submitting their practical work. This negatively affects students’ performance as students find it difficult to understand the programming concepts. This paper addresses the aforementioned drawbacks by applying blended learning for the first time to the C programming course which is taught to more than 1000 students each year at An-Najah National University, Palestine. Blended learning is a hybrid learning method which integrates the traditional learning method with technology and online learning. It provides students with more practical work and automated immediate formative feedback. This paper aims to study the effect of blended learning on students’ performance, and students’ satisfaction with the blended learning method. An independent experimental design was applied on 1374 undergraduate students enrolled in C programming course. Students were divided into two groups based on the learning method. The first group consisted of 632 students who studied the course using the traditional learning method, while the second group consisted of 742 students in which blended learning was applied. Quantitative and qualitative research methods were applied and the results revealed that blended learning improved student performance significantly compared with traditional learning. In addition, the results revealed that students were satisfied with the blended learning method in terms of easiness to use and suitability for programming and submitting assignments.