Multiprogramming is mostly used to maximize CPU utilization by organizing applications always to have one program to execute. On the other hand, multitasking aims to enhance reaction time by sharing computing resources across several users. Multiprogramming is primarily focused on increasing CPU use.