Annotation Based Dependency – BeanFactory doesn’t support annotation-based dependency while ApplicationContext does
Interface Definition – BeanFactory interface is defined in org.springframework.beans.factory.BeanFactory while the ApplicationContext interface is defined in org.springframework.context.ApplicationContext
Internationalization Support – While ApplicationContext supports internationalization, BeanFactory doesn’t
Object Management – BeanFactory uses syntax for providing a resource object. Contrarily, ApplicationContext creates as well as manages resource objects on its own
Type of Initialization – ApplicationContext makes use of eager or aggressive initialization. On the other hand, BeanFactory uses lazy initialization