Iterators are used in the Standard Template Library to access elements in containers. They allow algorithms to be applied to different container types in a generic way. The STL achieves efficiency through templates, providing compile-time polymorphism that is often faster than traditional run-time polymorphism implemented in other libraries.