Yeah. I know that. I'm using reflection with anonymous types already. But if you look inside an assembly (at the IL) you'll see that they are named <>anonymous_something and have the "CompilerGeneratedAttribute" on top of them. It's not very nice because

1) the name is generated by the compiler. The VB.NET compiler could name them different than the C# one.
2) The CompilerGeneratedAttribute is put on everything that is created by the compiler.

I need a way to say: THIS is 100% a dynamic type and this isn't, which doesn't seem to be possible right now.

Filed it as issue: https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=296989