My gut feeling is that QT is better
for cross platform applications
Absolutely. Qt is cross-platform, for real. (Sure, there's Mono that enables you to run .NET applications on Linux...)
but the UI won't be as slick
Depends how much you pay attention to details. Qt draws its widgets with native APIs (in the past it didn't, which caused its UI to look strange) meaning that most of its UI looks pretty good. There might be some widgets that don't look like the controls you might find in WinForms toolbox but that's because they are different frameworks.
is QT faster since it compiles to native code with no Virtual Machine?
Maybe, does it matter? Probably not (btw, I wouldn't be quick to say .NET is necessarily slower, I'm sure there are places it actually performs better).
I think also QT is C++ so unmanaged, so there is more chance of memory leaks etc?
In Qt
's code base? Very little, if any. In yours? Probably.
I would say this is one of .NET's biggest strengths in this argument - you get to write in C#. It's a much easier language to learn, you get things like automatic memory management, a huge standard library, one of the best IDEs and a very good designer (although Qt has Creator) and many more. (ofcourse if you target Linux aswell, that's a different story).