AFAIK there are no tutorials for geofencing, but it's pretty simple (assuming you want a circular fence).
- This tutorial will tell you how to get the user's location
- Any of these links will show you how to calculate the distance between their current location and the centerpoint for their fence
- Calculate their distance from the center at regular intervals. I'd let them set the interval through a settings screen and start with a default around five minutes because anything more than that is a hefty battery drain. Store that distance every time you get it.
- If their last distance compared to their new distance crosses the boundary, perform your action. For instance, I worked on an app that would alert a parent if the child left a friend's house or arrived at school.