I have read Spolsky's book User Interface Design for Programmers, as well as the classics The Windows Interface Guidelines for Software Design and Windows User Experience. The latter two are/were good reference books. Spolsky's book is a wonderfully entertaining read and teaches you how to think about user interface design.
For my money, though, the best way to design the user interface of a desktop application is to duplicate existing solutions from popular software. And by "duplicating," I'm referring to two distinct facets - the mechanism and the aesthetics.
As far as the mechanism is concerned, make sure your UI works the way people expect it to work. For example, if you have a treeview, make sure the keyboard arrows work for navigation. If your form has a scrollbar, make sure it responds to the scroll wheel on your mouse. By and large, the .NET controls provide the standard behavior by default, but you may have to configure some of the design-time properties to fully achieve this. I had a controls library I was working with a few years back that provided a standard textbox. What I discovered, though, was that the text was not automatically highlighted when I tabbed into the control. I added that behavior because it's the way I (and my users) expected the control to work. Quoting Spolsky, "consistency causes ease of use, which, in turn, causes good feelings..." In other words, if the mechanisms of your UI does not match what your users expect, your UI will be a source of frustration for your users.
As far as the aesthetics is concerned, I have discovered that focusing on things like fonts, icons, spacing between and alignment of controls, selective use of color (I love using gradients), etc. can go a LONG way toward adding that sense of polish to your user interface. I've been known to use bitmap screen captures in Paint to measure the padding between controls in order to mimic the padding in the Microsoft applications. When I divulge that information to co-workers, most of them look at me as though I've lost my mind. But I cannot tell you the number of user interface successes I've had simply by focusing on what everyone else considers insignificant. I chalk that up to simply leveraging all of the research Microsoft has ever done in making their applications visually appealing.
So my recommendation would be to read Spolsky's book and then try to duplicate as much of the Microsoft apps as you can. For desktop applications, it's the surest approach.