My limited understanding of things is that unlike Windows, there isn't just one primary api. There are various GUI tool kits - GTK, Qt4, Tk, wxWidgets etc. and there are language bindings for each tool kit for most of the major languages such as Python, C/C++, etc. If you already know C and can handle moving to OO code such as C++ you would probably be able to move to programming in any one of the various GUI tool kits without too much trouble. Python is often recommended for its shallower learning curve and relative platform independence - but if you're sticking mainly with Linux, that may not be as much of a concern.
One site that may be of interest to you is www.zetcode.com
. They have tutorials on most of the major GUI tool kits with most of the popular languages, databases, etc.