C - Where to now
Well your question covers a very large topic of hacking.
First application cracking. You need to know how the keys are formulated in the first place. To do this you will need to become familiar with Olly DBG and asm programing.
Once you do that the keygen can be made in several languages… take your pick.
As far as brute forcers go. They can also be done in several languages just google for bruteforce source code (may even try filetype:c, py, pl, etc, to locate langauge specifics, though many will still be a txt file), and get a feel for how they are going about accomplising their task… then apply to what you need.
EDIT:
Might want to start with the application challenges HBH provides. It will get you started on basic apps, using Olly and Hex edtors to find the passwords. All things you will use and need later.