Running a 5K in under 20 minutes, or just over 3 miles, is a reasonable goal, but one you should only try to accomplish if you already run regularly. If you do not currently run, running 3 miles in 20 minutes is setting your sights too high, and you should focus on just finishing a 5K. If, however, you already run, a few training tips can help improve your 5K time. If you consistently improve your strength and endurance, you should beat 20 minutes on a 5K, or 1 mile in about 7 minutes, in less than a year.
Run 3 to 5 miles at an easy pace twice a week. For example; do your easy runs on Mondays and Wednesdays, as this gives you Tuesday and Thursday to work on your harder physical fitness. Your easy runs should be runs, but you should not feel absolutely exhausted at the end. Time yourself during your easy runs and keep records so you can keep track of your progress.
Run a 5-mile tempo run every Tuesday. A tempo run is a basically a fast-paced run. So, if your Monday 5-mile run took 50 minutes (10 minutes/mile), you should try to cover more than 2 miles in 20 minutes. Warm up with an easy jog for 15 minutes, increase your pace to more than you are used to for 20 minutes, then slow back down to your easy jog for a 15-minute cooldown. This increases your body's lactate threshold, which is your muscles' ability to use oxygen. During the tempo period, you should be working too hard to have a conversation, but not so hard you can't give one-word answers.
Perform 440-yard sprints on Thursdays. You should warm up and cool down with a 2-mile run at either end, and perform four sprints in your first week, six in your second, and so on until you reach 12 per workout.
Go for a long run every Saturday. This should be between 8 and 10 miles, and should be at the same pace as your Monday and Wednesday runs.
Rest or perform another form of exercise on Fridays and Sundays.
Repeat this workout for several weeks, gradually increasing the intensity of your tempo runs and sprints and the length of your long runs. This makes it easier to sustain high speeds during your next 5K. Once you consistently run 5K in under 20 minutes on your easy days, you are ready to enter your next race.