I would say C and C++ can be a very marketable skill, especially if you're going into game programming. It also serves as a distinguishing point from all of the Java and scripting language programmers(Ruby, Javascript, Python, etc.) that are starting to flood the market. Being a competent programmer at C/C++ also possibly hints that you have a deeper understanding of what actually is going on with programming than programmers who typically deal in higher level languages... Assembly is another, that while not something you'll probably find jobs easily in, it is a nice bullet-point to have on your resume because it shows you're serious about your field.
I eventually plan on picking up some assembly eventually, but C++ it is for now and possibly C. Memory management isn't necessary to be functional since a lot of languages are garbage collected, but it is very useful in that you now have some idea of what the computer is doing behind the scenes. For example, I heard of 'references' in Javascript while reading the books, but I didn't really understand what that was all about until I started looking at c++ and dealing with references explicitly. I'm still quite basic in my C++ learning, but it's been quite informative.