depends on the game. If the game is like fifa(which requires more keys) it is always easy and cool to play in a joystick. But certain games are meant to be played in keyboard to enjoy them to the maximum. I play with both keyboard and joystick.
It really depends on what kind of games you are playing. For shooters, rpgs keyboard + mouse if you are lucky enough to play on a PC. For flight sims you ABSOLUTELY need a joystick, I don't like gamepads for flying. For arcade racing I prefer a good gamepad, even on PC (xbox gamepad is great for racing and can be connected via USB to a PC). For simulation racing you also ABSOLUTELY need a wheel, I wouldn't even bother trying them with any other type of controller. It's really good if it has 900° of rotation + clutch + H shifter.
I personally use the keyboard. I hate it, but i have to put up with it. One of the worst things about a keyboard during a race car game is the harsh movement you get, since keys aren't pressure sensitive. If someone was to give me a free joystick or steering wheel...i'd never go back to a keyboard.
Its tough to play with keyboards as the buttons don't work as fast as remote or joystick. So, joystick always.