No, anonymous types never implement interfaces. dynamic wouldn't let you cast to the interface either, but would let you just access the two properties. Note that anonymous types are internal, so if you want to use them across assemblies using dynamic, you'll need to use InternalsVisibleTo.