My comic is made predominantly with vector graphics in Inkscape, which allows me to create the line art and apply a flat color, gradient, or pattern within it at the same time, for every shape, or every path. I usually use cel shading and highlights by applying blocks of a dark or light color at a reduced opacity. They can be blurred to create soft shading. I use either the clipping feature, or boolean operations (difference or intersection) to confine the shading or highlights to one shape or path.
When I'm finished with working on a page in Inkscape, I export it as a .PNG and add any finishing touches in Photoshop. I make some backgrounds and effects with Photoshop when it's less tedious that way.
When I make comics or illustrations in Photoshop, I scan the line art, and put flat colors underneath it in another layer. I usually use the magic wand tool in the line art layer, then switch to the lower layer for the coloring and use the paint bucket tool to fill in the selected area. If there are any pixels left uncolored, I color them in manually using the paint brush. Shading and highlights are done in separate layers above the flat colors, but below the line art.
I use a lot of layers when coloring in Photoshop in case I make a mistake in one layer, because it'd be easier to correct.