As a cross country coach I've seen way too many runners push themselves up a hill by maintaining the same speed as on the flat, only to die at the top. I've always told my runners to instead maintain effort up the hill, and maintain effort at the top and beyond. Anybody that flew past them going up the hill will come back at the top (and then some). If you rate your running effort at a six on the flat (on a scale of ten and a full sprint being a ten), keep it an effort of six going up.
Waterboy is mostly correct about the form. He's right, don't lean forward from the waist like most people do, but you should instead lean forward from the hips. This will keep the rest of the upper body in alignment with your hips and allow you the angles you need to climb a hill. It'll also be easier on your lower back. You'll need a shorter stride and the steeper the hill, the more youll need to be on your toes. And use your arms! I use the tow rope imagery also.
He's also right about going downhill...open the stride and let gravity do it's job. The imagery device I've used for downhill running is to imagine yourself running perpendicular to the hill...there's a balance point that takes some practice, but you'll know when you've found it. If you find yourself losing control, throw your arms over your head. Many runners use a heel strike going down, but some coaches recommend using a mid-sole strike...again takes some practice but use whichever you're most comfortable with. Going downhill requires very little effort if done right, so temporarily throw the effort scale out the window.
As for training, either do hill repeats or select a route with several hills on it. We have a route that we call "serpentine" that goes up a 1/2-mile hill, over one block, down, over another block, up, over one block...Total of 4-7 uphills depending on the experience level of the athlete. Kids hate it, but it's effective and we're good on the hilly courses.