An intuitive way of animating the camera?


i want to do a particular camera movement. It contains the movement of the camera (probably along a path, because thats the most smooth movement afaik), and some rotation (looking at different points, but also tilting the camera).
I could do the rotation with tracking to an empty, but than i can’t do the rotation around the local z axis (afaik).
Doing the rotation with keyframes by hand always leads to completely messy results, even with smoothing things out in the graph editor…

So, is there a way to do better, more intuitive camera movements at all, or do you have an idea, what else i could try in this particular case?