I emphatically recommend Qt. It has many bindings, with C++ and python (via PyQt) to probably be the most common. Qt is message driven, has a visual interface creator, and is easy to use and build. It also looks pretty damn good on every platform, even OS X. Message driven means someone does something to an interface element (like clicks it) and it creates a signal, and you have a method that gets called. This is, to me, much more intuitive.
wxWidgets is event handler driven, you have a loop that is constantly checking on a giant state machine, and you write handlers for certain state changes. This is outdated and dick chafe, to me anyway. Unless you want to script GUI elements using python (as in, embedding the python interpreter in your GUI program, I don't mean simply writing the program in python), steer clear of wx. Wxwidgets was originally developed to be (and still is) very close to MFC. MFC is short for Microsoft Foundation Classes. It's the clusterfuck of a Windows API that predates .NET. There is a reason .NET was a completely new API that shared nothing with MFC, and that reason was because MFC was fucking terrible.
Back when .NET was being transitioned to and tons of developers who had been using MFC for years found their entire knowledge base suddenly deprecated. That's a pretty awful situation to find oneself in, so enter wxWidgets. Unfortunately, it inherited a lot of the things that were bad about MFC because of this.
Qt also is originally for use on dumb phones, and was created by Nokia. It's now become a very polished, feature complete (while staying lightweight) solution that works on all platforms, including mobile look-at devices such as tablets and smartphones.
Also, Qt is licensed under permissive, non-copy left licenses which greatly simplifies what must be done should you ever modify the code base for one reason or another for a given program you're writing. It does happen, though is uncommon. KiCad modifies wx to get it to run properly on OS X, for example.
Then there is, uh, wxqt. That just confuses and frightens me.
I don't have any experience with much else, but I am sure there are other good options too. gtk+ looks nice, despite evolving from the GUI for GIMP, generally regarded to be the single worst GUI ever made by man or God.
Here is a helpful post that goes more in-depth on wx and Qt at least, on StackExchange.