I've been programming in C++ for a while and I'm starting to see C#
Honestly, I'm interested in making desktop programs, but I have no idea how to make the visual environment of the program; that is: buttons, effects, images, sounds, etc.
Does it require libraries or something other than C++?
The C++ standard does not have a library to create graphical interfaces.
The only options are to immerse yourself in how the operating system's graphical API works (winapi in the case of Windows) or to use a third-party library that encapsulates the complexity of talking directly to the OS API.
I would recommend using a third-party library and, in this case, there are many possibilities. Some of the best known are: