SAN DIEGO -- Jeffrey Eggleston of Boulder, Colorado, won the Rock 'n' Roll Marathon in 2 hours, 21 minutes, 18 seconds on Sunday, and 94-year-old Harriette Thompson of Charlotte, North Carolina, became the oldest woman to run a half-marathon.

Thompson finished in 3:42:56 to loud cheers from thousands of spectators lining the finish chute.

Two years ago, Thompson became the oldest woman to run a marathon.

Harriette Thompson, 94, becomes the oldest woman to finish a half-marathon. Two years ago, she became the oldest woman to run a complete marathon. Jerod Harris/Getty Images for Rock 'n' Roll Marathon Series

"I could hear my name being shouted the whole way," Thompson said. "I suppose I'm a legacy, at least that's what they say."

Eggleston completed the marathon well ahead of runner-up Brandon Messerly of San Luis Obispo, California, who finished in 2:30:14.

San Diego's Bridie McCarey won the women's marathon in 2:48:48. Ying Tao of San Diego was second in 2:52:58.