I learnt on high level languages, and I study with people who learnt on C. I found grasping the concepts of OOP easy, others who didn't learn in an OOP environment found it harder whereas when I had to learn C I found it no problem. Apart from the memory management and pointer arithmetic there wasn't much new to learn (except how much better modern languages are). But yes it is good nonetheless to have those foundations. Any degree in engineering/compsci will go over C and even assembly (we had too) at some point, why beat yourself over the head with a language that's been superseded by many other superior languages when you don't have to? If I was into electronics/embedded programming I might spend more time with C but imo it's pointless today, it has it's place in history though.