The most important reason for Vancouver (actually the region to the SE of the Rockies) is the Rockies. The mountain range blocks cold air coming down South from the Arctic circle, thus keeping the area warm. Just compare Vancouver and Halifax (another coastal city).