For some reason the numericUpDown is a decimal or a double or one of those ;)

I find that annoying, but whatever. So how do I use it as an int? Int32.Parse(); only works for strings.

It's a decimal, and you covert it by doing this int myInt = (int)myUpDown.Value; .

Note that if you allow values outside of the normal Int32 range the value you get will be wrong :)