Question: Often I hear people around me who like to discussion about writing in assembly language and which is one of those reasons I'm also want to learn to write it. Currently I'm learning assembly and C together.

So, my question is when do you ever need to write assembly in real code?  

Is it just good to learn?  

Are there are any real uses of it when writing code in C?

Any helpful comments or answers will be appreciated!

Answer: 
I was going to write a long post but decided to summarize instead:

1. embedded code, boot loaders, compiler backends
2. yes, it will help you understand and debug your compiled code
3. the only time I have used it in c is for reading the real time clock register
I've done it twice in 2011 so far, and I mostly work on Java line of business apps. Came in handy for whipping up a quick setup.exe to wrap a JRE and app install. Could have done that in C, but it's quicker to grab and setup an assembler than a compiler and for such a simple app the write time is comparable either way... Also used it to work on a problem interfacing with a USB device. Was failing for unknown reasons via JNA, so I wrote it in assembly to make sure I knew where every bit was going and when.