Добрый день я хочу сделать движок для 2d Rpg с инвинтарем, спелами, боссами и тд... на чистом C# winforms хотел бы спросить что нужно учить и где?
Игра и винформс плохо совместимы. Даже для 2D крайне желательно иметь нормальное аппаратное ускорение графики. Так что - учите любую графическую библиотеку под выбранный вами язык программирования.

Гуглить как-то так
В первую очередь вам необходимо создать свой движок, а точнее все используемые вами части:
1) графический движок
2) физический движок
3) возможно, магический движок
4) систему интерфейса
5) звуковой движок
6) возможно, сетевой движок
7) редактор уровней
8) редактор персонажей

Затем уже в своём движке создать игру как на любом другом движке.

p.s.
Также советую взглянуть на Unity 3D.