The Service Container is the main Application object. It can be used as a Dependency Injection Container, and a Registry for the application by defining bindings in the Service Providers
Service Providers are classes where we define the way our service classes will be created through the application, bootstrap their configuration, and bind interfaces to implementations
Services are classes that wrap one or more logic correlated tasks together