On PIC18 series, when should I use LAT register and when PORT?
Use PORT to read from a pin, and LAT to write to a pin (and TRIS to change the direction). 

Some PICs do not have a LAT register, in those case you are forced to use the PORT register to write to a pin, which exposes you to the dreaded Read-Modify-Write (it's not a bug, it's a feature!). Check my explanation in Interfacing a keypad with a microcontroller