I started Lucy on a long line, running away from her. She'd start to follow, and I'd call her and reward her for coming. I never called her when she was distracted by something else (I wanted to set her up for success).
Every evening we'd practice in the hallway of our apartment--me at one end, hubby at the other, calling her back and forth and rewarding her for coming.
Eventually I was able to ditch the long line in boring outside situations (like a fenced, empty tennis court, or an empty dog park). Still called and rewarded every time. Now I can take her into the woods, but my pockets are still stuffed with cheese when we go, so I can reward recalls in a much more difficult situation (with squirrels and smells and room to run, the temptation to bolt is much higher). I don't think I will ever attempt to have her off leash without my pockets full of treats--just not worth the risk IMO.