LPR and RAW are low level protocol selections and have no affect whatsover
on the actual print data stream content; thus it makes no difference to the
size of the print data stream or what can be printed.
The printer driver renders the graphics, text etc. from the application into
a print data stream that can be understood and interpreted by the printer.
The spooler service takes this data stream and packages it for transmission
to the print device using whatever packaging is appropriate for the port.
For TCP/IP connected print devices, packaging of the print data stream means
inserting chunks of the print data stream into TCP/IP packets with
appropriate headers as specified by either the lpr/lpd protocol (RFP 1179)
or the RAW (Port 9100) protocol.
Some print device LAN adapters (or simple "print server" hardware devices)
do not support both protocols, although most do. Also, if the print device
is really another computer running, for example, UNIX, LPR must be used.
Simple "print server" devices that have multiple parallel ports also
typically require the use of LPR to send print to other than the first
parallel port.
The RAW (port 9100) protocol has smaller packet headers and generally less
network overhead than the LPR protocol, but in most cases, it would be hard
to measure any significant different in network load or print speed between
the two. There will not be any functional difference - the print data
stream sent to the actual print engine will be identical.
So, there really isn't any "best". Whatever works.