I think
@speter178 hit the nail on the head for the most part.
This is the only thing I disagree with. You gotta know what you want to do, then pick the language. While a good programmer can make almost any language work for any purpose, some are more suited for the job than others.
NO!
Do not start with C. C is not an easy language to start with. It's too low-level for a beginner; you have to manually deal with memory which is very easy to screw up, even for experienced programmers. Forget 1 null terminator on a string and watch your entire program go nuts.
Do not start with C. If you want to learn software programming, start with C++, and maybe a good library for it, like Qt. Then try straight C++, no libraries, just Windows API calls where needed. After you've mastered that, then you can mess with C.
Perhaps provide some examples of what kind of programs you'd like to be able to develop, and the community will be able to recommend languages suited to the project. After a few projects, you'll be able to pick a language yourself.