Device setup classes - USB

MSFT documentation states that the USB setup ClassGuid {36fc9e60-c465-11cf-8056-444553540000} includes USB host controllers and USB hubs, but not USB peripherals. I would certainly expect USB thumb drives be called "peripherals" but they use the same setup GUID as well.

Is there any reason why the documentation explicitly states that peripherals don't belong to this setup class or is it simply incorrect?

USB thumb drives should, of course, appear under mass storage devices.

The reason is history. In the early days, there was no clear guidance on this issue. "Class USB" seemed like a perfectly acceptable place to put any random USB device that didn't otherwise have a category. Later, Microsoft clarified that the INTENT was for that class to contain only devices related to the USB infrastructure -- controllers and hubs. By then, many devices were already using class USB and didn't want to change. There is now a "USB Device" category for miscellaneous USB devices.

Thank you. Mass storage was just one example, a range of USB devices including composite devices for audio/videos, HID mouse/keyboard, printers, etc fall into this class as well.

Well, no. USB Audio devices belong in Media. USB Video device originally belonged in Media, but there's now a separate Camera class. USB Scanners go in Imaging. Printers belong in Printers. Mouse/keyboard belong in HID. There's an install class for almost every defined USB class. The only question is vendor-defined devices, and here the INF should usually define a custom class.

I mean, the root "USB composite devices" for audio/videos, HID mouse/keyboard, printers are falling into this class as well as per the device manager. USB interfaces of these composite root devices are clearly falling into their respective categories (as Media, Camera, HID, Printer etc).

Yes. Those composite devices are, arguably, part of the "USB infrastructure". They are handled by usbccgp.sys and serve no purpose except to funnel requests from the various interfaces. You can't send requests to them.