After several discussions about what a useful container must solve, Castle's first draft was created. Several changes (and rewrites) have taken place before reaching its current form.
However, Castle had a more ambitious agenda. Tools like DynamicProxy and the Management Extensions were used by several projects and a proper home to support those users and build a community around them was necessary. Along the same lines, these tools had nothing in common with Avalon's mission, so we had to find a more suitable home for them.
Since then a new mission came, and new projects flourished. The Castle Project team is as concerned with the quality of the projects as it is concerned with the health of its community.
Windsor
Castle Windsor is best of breed, mature Inversion of Control container available for .NET and Silverlight.
Service
Services in Windsor lingo, are abstract contracts describing some cohesive unit of functionality
Component
A component is a small unit of reusable code. It should implement and expose just one service, and do it well. In practical terms, a component is a class that implements the service interface.
Dependency
Dependency is another service or parameter that a component uses in order to do its job. In Windsor, dependencies are either constructor parameters, writeable properties, or custom, like Interceptors, mixins etc.