IF is a SPECIAL-OPERATOR, it evaluates its first child for being non-NIL, if that's the case then it evaluates its second child and returns that as its result, or else it evaluates its third child and returns that.

(LISTP 1) evaluates to NIL, because 1 is not a CONS, so it evaluates (+ 3 4)

+ is the function that adds all of its arguments together, (+ 3 4) evaluates to 7