People haven't been using Spine-XNA lately so things like this come up.
Change:
List<Slot> drawOrder = skeleton.DrawOrder;
to
var drawOrder = skeleton.DrawOrder;
This isn't a dynamic type. It just lets the compiler infer the type from the right-hand-side type.
Also change line 89 to :
from
Slot slot = drawOrder[i];
to
Slot slot = drawOrder.items[i];
If you're looking for a good engine to practice programming, Unity is also good. They have pretty nice basic programming tutorials on their site too. Just make sure you're learning C#, as their other languages are being slowly abandoned.
But I agree XNA is a good place to learn your basics of object-oriented programming. People could argue either way.
Good luck with learning!