One alternative Win4Lin, make work for you lindows.com
(You're forced to run LindowsOS though I think)
Also, depending on what you're programming,
Wine may be a choice for you. However I'd really
look into it, as Wine may present more problems
for learning C on Windows than it's worth. Straight up C might
not be an issue, but if I were doing any kind of
Windows api stuff, I wouldn't use it, or would be very sure
about the API compatability. Read up on it. -WineHQ
Don't get me wrong though, Wine is great for running apps you already use in Windows and want to have available to you in Linux.
I'm curious to hear what other might be able to suggest.
good luck -