(setq foo '(1 2 3))

1番目 ×
(setq foo (append (list 4 foo)))

2番目 ○
(setq foo (append (list 4) foo))

でも、追加(append)したいんだったらこうじゃね?
(setq foo (append foo (list 4)))

君のやってるのは、こっち。
(setq foo (cons 4 foo))

add-to-list 使ったほうが簡単だとおもうなぁ。

(add-to-list LIST-VAR ELEMENT &optional APPEND)