You should prefer libusb because it is platform independent and provides better APIs to work with USB devices than sysfs.
If you do not need to integrate this functionality in some other program, consider using the standalone usb-devices
or even lsusb
programs (which are included with the usbutils
package).