Try this:
dir /b | sort /r > sorted.txt
dir /b prints only the item names in a directory.
| pipes the output of dir /b to sort.
sort /r preforms a reverse (descending) natural sort of the item names.
> sorted.txt redirects the standard output of sort to a text file (sorted.txt).
Notes
Unlike sort, dir outputs item names in lexographical order, which can affect items with numbers in their names (e.g. 1, 2, 12, 22 is sorted as 1, 12, 2, 22).
For your use case, it is likely undesirable to use dir /b by itself (without sort).
dir /b includes all file and subdirectory names in a directory.
Any output text file (e.g. sorted.txt) will be created before dir /b is executed.
To avoid having e.g. sorted.txt included in sorted.txt, run these commands outside the directory you wish to sort and specify a path to the directory in dir /b (i.e. use dir /b "C:\path\to\folder" in place of dir /b).
You can use . as a shorthand reference to the current directory to avoid typing e.g. C:\long\path\to\current\directory.
More information on Windows dir and sort commands.
I need to append the files in the descending order of names.
You will need a second command to loop through your files and concatenate them after you have produced your list of sorted names (e.g. sorted.txt). As an example:
FOR /F "tokens=*" %i IN (sorted.txt) DO type "C:\path\to\folder\%i" >> appended_items.txt
For batch files, use %% rather than % (which is what you would use at the command line). Note that >> is used with the type command to append to an existing file (e.g. appended_items.txt).