I attended Code Camp 12 recently, and a speaker there said that the new dynamic
keyword in C# 4.0 should only be used for interopping with dynamic languages. I think he also said that it is somewhat slow, compared to normal reflection (which itself is somewhat slow).
But then I heard Scott Hanselman mention that the dynamic keyword "makes reflection less painful".
So is it going to be acceptable to use the dynamic keyword for the purpose of reflecting an object that doesn't come from dynamic code?