There are several programming languages which can build a Windows application. Is there one you have prior experience with? It's likely you can locate a version which makes it easy to open an application window, talk USB, accept mouse input, keypresses.
Consider using the programming environment which Microsoft recommends, because they are likely to cooperate with each other. The developer resource websites seem to favor C++, Visual Studio, and DirectX. (You may need to spend money at some point.)
Does your project require extensive complicated routines? Calculations, graphs, disk access, etc.? You need to make sure everything you want to do can be done in that programming environment.
Scripting is a language which is worth a look because it allows a novice to perform powerful tasks. Example, I have used ThinBasic. It's a scripted version of BASIC which works directly with Windows. It creates windows and messages using the same routines as reside in the OS. Thus I can make my program behave like a commercial Windows application. I have not tried USB communications with it, however.