I would love to code a cross platform client, but unfortunately my programming skills only extend, and are confined to, windows based enviroments. This isn't to say I will not look into it, because I'm still in the beginning stages of development and now would be the time to make a change like you mentioned. Thanks for the input.
GTK+ for Windows (more cross-compatible with GNOME), and
some books to ease the learning curve.
QT for Windows (more cross-compatible with KDE, eventually), and
some books to ease the learning curve
Some of the books are a little dated but there are some very recent books too. And since you program in C++, there is hope. C and C# won't be such a daunting task too, I believe.
But on Linux/X Windows this is not important hence you could have GTK+ apps running on XFCE, KDE or even WindowMaker. The Desktop Manager is not really important.
But porting to other systems is easier from there.
Skype for Linux is made with QT and GIMP for Windows uses GTK+