Not quite sure itís that simple. Lance has lower damage output but attacks faster, and has counter (thus more frequent application). Gunlance, as far as I know, doesnít apply status from shelling, which you should be using to put out that superior damage. That said I would say lance if nothing else because with gunlance you are usually shelling more often than not.
If shells DO apply status effects someone let me know because that would be hilarious.
Also, this needed to be asked in the Q&A sticky above, just sayin'.