Vou resumir meu problema no seguinte trecho de código.
List<int> list = new List<int>() { 5, 56, 2, 4, 63, 2 };
Console.WriteLine(list.First());
O código acima está funcionando bem.
Agora eu tentei o seguinte
dynamic dList = list;
Console.WriteLine(dList.First());
mas estou recebendo RuntimeBinderException. Por que isso acontece?
this
é dinâmico aqui, mas se você pousar aqui, provavelmente também deve olhar para essa questão