There's a zillion labels sources. At risk of stating the obvious, "bar code labels" are just labels that happen to have some ink arranged as bar codes. Virtually any label maker can offer bar code labels, though there are also many companies that specialize, eg:
Preprinted and Custom Barcode Labels
There are lots of application questions. Label size and shape, bar code symbology, adhesive type, label stock (paper, vinyl, etc), format (roll, sheet, etc) None of these are bar code specific -- they are just questions about labels. And of course all the questions about how the labels are to be applied (manually, automatically, etc)
Similarly, scanning itself is utterly simple, but there's basic application questions you have to ask. Equipment available to scan bar codes includes: $25 USB scanners (attach to computer); proprietary hand-helds ranging from $500 to $5000; iPhone camera.
Just putting a label on something and then scanning the label accomplishes relatively little. Most commonly, you have some sort of application that has other data about a thing (such as an inventory system) and the serial number (represented as bar code) is then associated with an instance of that thing in the inventory system.
If all you do is scan a label on the item, it's not much different than if you just scanned the label on the roll it comes on; the information in the scanner is no different. In other words, by just scanning a label, you're not associating that serial number with anything -- you're just reading the number.
The overall point being bar code labeling and scanning, per se, is utterly simple. You can be doing it for under $100 in a couple hours. But you need an objective and application/process design to make it meaningful.