Cloud computing has gained many attentions worldwide. Workflow systems become a significant method for develop scientific applications. Therefore, workflow scheduling is considered one of the most important issues in cloud computing. It concerns about mapping tasks on cloud resources (i.e., Virtual machines (VMs)), to improve scheduling performance. Because the existing heterogeneous earliest finish time (HEFT) algorithm is considered one of the best and simplest algorithms, many algorithms have been proposed to improve the performance of the HEFT algorithm. According to our previous work, a modification has been done to HEFT algorithm to enhance the performance, called modified heterogeneous earliest finish time (M-HEFT). The goal of M-HEFT algorithm is to reduce make span, maximize resource utilization and increase load balance. According to the work in this paper, an enhancement has been added to our previous M-EFT algorithm to reduce the tradeoff among make span, resource utilization, and load balance, called enhanced modified heterogeneous earliest finish time (EM-HEFT). The enhanced EM-HEFT algorithm consists of two phases; task prioritization and task-VM mapping. In task prioritization phase, a priority will be provided to each task in directed acyclic graph (DAG) by introducing new factors in priority value to be more aware about task requirements. According to task-VM phase, tasks are allocated to resources as in our previous M-HEFT algorithm. To evaluate the performance of the proposed EM-HEFT algorithm, a comparative study has been done among the proposed algorithm and four existed algorithms (HEFT, Efficient scheduling algorithm use critical path and static level attribute, Optimized Min-Min (OMin-Min) and our previous M-HEFT). The experimental results show that the proposed algorithm outperforms other algorithms by minimizing make span by 25%, improving resource utilization by 43% and load balance by 14% in average.