Niner since 2012
Program Manager on the .NET Framework at Microsoft.
@Curtis Gibeaut: MEF has a few mechanisms for differentiating between implementations of an interface.
The simplest is to use names - there's an example here: https://blogs.msdn.com/b/bclteam/archive/2011/11/03/overriding-part-registration-conventions-with-the-mef-attributes-nick.aspx
Beyond simple naming you can also apply and consume export metadata, e.g. see: http://devlicio.us/blogs/derik_whittaker/archive/2010/03/06/providing-metadata-to-you-mef-exports.aspx.
Hope this helps!