Objects; they're all objects. Understand objects.
RAII/Constructors and destructors; managing object and resource lifetimes, and suitably ensuring that visual widgets and other such Qt objects are created and disposed of properly.
Threads; Qt Widgets (and your own objects) spark actions in Qt objects through signals and slots (fancy Qt meta-programming that takes care of a lot of boilerplate for you), that have rules about working across threads. Understanding threads is needed to understand these restrictions, and the GUI rule of "stay off the GUI thread" applies always, if you don't want to lock up the GUI. This means you'll need to create other threads to do the heavy lifting. You don't have to use standard C++ threads, but you'll need to understand threading.
Don't use QList unless you really have a good reason, even if you find old documentation saying you should.