The Boss Gent
Programming concepts are things such as variables, control structures, data structures, algorithms, design patterns, paradigms (procedural/structured/imperative), etc.
All of these are not specific to a certain language, so by learning more about these things you get a wider understanding of programming as a whole. It is knowledge you can apply in a great variety of languages.
seeing my friend who graduated from BSCS, you don't need to "ALL".
he had experience with java,C/C++/C#, .net. all he learned from our school whether he liked it or not since it's part of the school's curriculum. he's now just learning python tho.
With different programming languages you get to know different things.
My course of computer science started with C, making a linked list with pointers, getting familiar with memory allocation, then we learned C++ (encapsulation, polymorphism, inheritance), some assembly after that & only then JAVA. From each of the subjects I've learned the <<basics>>. I can guarantee, that if You know one programming language well, You'll be able to learn other ones in no time :)
Above all, as mentioned in the answers above, what is important is to understand programming concepts which are similar in every language. Personally, I found using Java to understand the concept of OOP quite effective. C is also good to understand these concepts at a lower level.
It's all depends on you that, in which field you want to make your career.
Basically you must knows the basic of all the languages.
Every language have their own pros and cons. So, you should knows 2-3 languages which helps you in your project without any others help.