For some reason the "Microsoft DOS" section is 90% NT based batch scripts. If anything it get's confusing when people actually try to get help with a "real" MS-DOS Batch file, since replies will generally assume NT Command extensions.
For .cmd and .bat, they are effectively identical in how they operate on NT (with some minor differences with Errorlevels, I think). Both can be used with all NT Command extensions. The .cmd extension was mostly useful in the early days so that you could indicate whether a batch was designed for windows NT or Windows 9x. Not so useful now when you have to reach back a decade or more for Windows versions without the added featuresets.