Saying that it's like assembly is an odd way of phrasing it since a single G code statement can have a huge amount of functionality under the hood. But yes, it's interpreted. In fact, some older machines have very small buffers so you have to "drip feed" them a few lines of G-code at a time.
I work with gcode on a day to day basis. I understand what the parent poster means about it being "assembly like", in that many of the common patterns of handwriting assembly language are employed when hand writing gcode. It has GOTO statements, lots of analogs for push and pop like behavior, and in some cases you are manipulating raw bits to deal with user input. It is interpreted into machine code as well, as is assembly.
OK, that I can see.
Yeah, I say G-code is Assembly-like the same way I'd say a dolphin is fish-like: they resemble eachother in many ways and if you'd never seen one, you kinda get the idea, but they are not related and if you cut them open they are very different.