Достаточно хорошая статья про особенности работы с деньгами.

Я обычно на практике использовал int64, если нужны только операции + -, и decimal если нужны другие операторы. И код валюты рядом, само собой.