This paper presents an architecture along with an implementation approach to build efficient e-learning applications. In this architecture, e-learning infrastructure uses the Grid computing technology which chooses the best available resources for e-learning objects execution. An e-learning object is defined as the unit for structuring e-learning applications/courses. Furthermore, the infrastructure uses the Semantic Web to specify the learning objects requirements as well as the Grid resources description. A broker entity is developed within the architecture as a mediator who receives performance requirements of the learning object specified using the E-learning standard LOM and the available resources on the Grid that are required to execute that object. The proposed architecture is expected to guarantee the optimum allocation of available Grid resources to satisfy the performance requirements of E-learning applications.