Hey! I was wondering should I learn assembly as I know C++ pretty good now and I look forward to new things to learn. I remember someone said that you should learn assembly then you know really how to program. So what help assembly could provide to me, is it worth learning? Someday I browsed one forums and saw someone made guide how to DLL inject, there were many ways, some in C++ and some in ASM. The ASM way looked alot shorter than the C++ way.
That really made me to think.

I was wondering should I learn assembly

Yes.

But please do realize that in your whole programming career you almost certainly will never ever write a single line of the assembly code.

So, why bother? A simple answer is to understand how the machinery underneath your C++ really works.

Study some contrasting technologies, line x86, cpu32, risc, vliw, cuda (what other abbreviations can I recall?). Study some 8-bit architectures. Study them all in parallel. Try to port something from x86 to, say, spark. Appreciate how a high level languages simplify your life.