Grid Computing has emerged as an important new field focusing on resource sharing. One of the most challenging issues in Grid Computing is efficient scheduling of tasks. Load Balancing is a technique to improve parallelism, utilization of resources increasing throughput managing and to reduce response time through proper distribution of the tasks. Generally there are three type of phases related to Load balancing i.e. Information Collection, Decision Making, Data Migration. In this paper, the authors propose a Load balancing algorithm for optimal scheduling. It scheduled the task by minimum completion time and rescheduled by waiting time of each task to obtain load balance.