On an older work truck, especially one you plan to keep working, a professional spray in is not worth it. You're looking at $500 for a name brand. It will protect the bed, but it's just a waste of money on a truck that isn't in pristine shape.
You can get used drop ins for next to nothing for any common truck on Craigslist all day. If the bed is scratched up already, I would repaint before installing a drop in as it may aggravate the situation and grind stuff into the existing scratches.
If you do proper prep, follow directions, and take your time, Herculiner and Duplicolor Bed Armor DIY kits can come out really, really good. I doubt they will last as long as a Line-X or Rhino, but you can probably get 5+ years.
The spray can stuff is a waste of money. If you DIY, roll it on. The spray cans are for Jeep guys to paint little odds and ends...they do not hold up to truck bed use at all.
I have had two Line-Xs. First one held up really well on a truck that didn't do a ton of hauling. I did have a couple spots fixed under warranty that a junk Ford 9" diff took out, but it looked really good when I sold the truck.
My current truck has one too, sprayed on around 2004, so it's about 10 years old now. Looks like a bomb went off back there. Would probably take a respray to fix everything, BUT this truck has seen some pretty rough use. There are numerous tears and rips, it has faded some, and it does have some chemical stains. Overall though, I would say it has protected the bed. I like the texture of the material as well. It still looks good from a few feet away...
If you do go for a pro spray in, check them out before deciding. Line-X is flexible, but harder than Rhino. Rhino has a more rubbery feel. Neither is better or worse, it's a matter of personal preference and what you will be hauling.
Drop ins do a better job of preventing dents than any spray in, but they can do nasty things to the paint on the bed, especially up north where salt may find its way in.