MEF is a Composition based Extensibility framework that can be used by both First and third parties to extent application features.
It is based on Composition automatic discovery logic that allow components to be developed separately and then framework pick all required components at run time and put them together make them work like a single unit.
When to use MEF
When you have a large application in which classes are holding instances of other classes and you don`t want tight coupling during object initialization like x=new MyClass.
if you want an alternative way of dependency injection with automated discovery