| Place | Bib | Name | Age | Sex | City | State | Swim | TRN1 | Bike | TRN2 | Run | Time |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 710 | Andy Wiberg | 37 | M | Lakeville | MN | 29:38 (1) | 1:07 (2) | 17:39 (2) | 57:06 | ||
| 2 | 439 | Casey Miller | 37 | M | Baxter | MN | 7:59 (49) | 1:30 (8) | 29:56 (3) | 1:15 (14) | 17:31 (1) | 58:10 |
| 3 | 528 | David Phillips | 30 | M | Maple Grove | MN | 7:52 (41) | 1:23 (3) | 29:45 (2) | 1:16 (18) | 19:53 (12) | 1:00:07 |
| 4 | 352 | Dmytro Koshevy | 28 | M | Richfield | MN | 7:54 (44) | 1:18 (1) | 31:31 (4) | 1:09 (7) | 19:01 (7) | 1:00:52 |
| 5 | 642 | Brian Storhaug | 25 | M | Alexandria | MN | 6:10 (2) | 1:59 (57) | 31:57 (8) | 1:17 (19) | 19:38 (10) | 1:00:59 |
| 6 | 38 | Ben Bassett | 39 | M | Bloomington | MN | 7:05 (14) | 1:27 (6) | 32:20 (12) | 1:16 (17) | 19:26 (9) | 1:01:32 |
| 7 | 796 | Lee Brown | 24 | M | Maple | WI | 8:13 (57) | 1:23 (4) | 32:22 (13) | 1:10 (9) | 19:05 (8) | 1:02:10 |
| 8 | 612 | Colin Smith | 46 | M | Minneapolis | MN | 31:55 (6) | 1:31 (63) | 20:18 (14) | 1:03:14 | ||
| 9 | 738 | Cheryl Zitur | 51 | F | Corcoran | MN | 7:20 (21) | 1:48 (34) | 32:18 (11) | 1:35 (83) | 20:23 (15) | 1:03:22 |
| 10 | 739 | Jon Zitur | 26 | M | Carver | MN | 6:47 (8) | 1:39 (23) | 31:55 (7) | 1:55 (153) | 21:17 (26) | 1:03:32 |
| 11 | 222 | Jeff Glover | 44 | M | Plymouth | MN | 7:34 (31) | 1:35 (15) | 33:10 (20) | 1:21 (27) | 20:06 (13) | 1:03:44 |
| 12 | 582 | Pablo Sanchez | 31 | M | Saint Paul | MN | 8:48 (90) | 1:44 (28) | 33:51 (31) | 1:09 (8) | 18:42 (5) | 1:04:12 |
| 13 | 227 | Ross Golla | 37 | M | Minnetonka | MN | 8:21 (66) | 1:40 (24) | 33:16 (22) | 1:18 (22) | 19:41 (11) | 1:04:15 |
| 14 | 520 | Craig Peterson | 54 | M | Minneapolis | MN | 7:40 (34) | 1:29 (7) | 32:37 (14) | 1:09 (5) | 21:36 (33) | 1:04:28 |
| 15 | 631 | John Stangl | 53 | M | Buffalo | MN | 8:24 (70) | 1:34 (14) | 32:16 (10) | 1:27 (41) | 21:19 (28) | 1:04:59 |
| 16 | 422 | Doug McGrath | 30 | M | Robbinsdale | MN | 7:01 (13) | 1:34 (13) | 34:19 (41) | 1:28 (50) | 21:14 (22) | 1:05:34 |
| 17 | 783 | Josh Doebbert | 27 | M | Minneapolis | MN | 7:46 (37) | 1:31 (9) | 33:56 (32) | 1:14 (11) | 21:17 (23) | 1:05:42 |
| 18 | 104 | Dain Clausen | 27 | M | Golden Valley | MN | 7:16 (18) | 1:33 (11) | 33:35 (28) | 1:26 (37) | 22:05 (39) | 1:05:53 |
| 19 | 45 | Jason Beck | 29 | M | Minneapolis | MN | 8:24 (71) | 1:34 (12) | 31:41 (5) | 1:27 (45) | 22:53 (59) | 1:05:57 |
| 20 | 449 | Marty Moran | 49 | M | Saint Cloud | MN | 33:10 (21) | 1:34 (75) | 23:51 (81) | 1:06:02 | ||
| 21 | 563 | Parker Roehl | 18 | M | St. Bonifacius | MN | 6:52 (11) | 1:22 (2) | 35:26 (66) | 1:08 (4) | 21:24 (30) | 1:06:11 |
| 22 | 7 | Greg Alexander | 38 | M | Plymouth | MN | 7:24 (24) | 1:48 (35) | 33:05 (18) | 1:20 (24) | 22:39 (55) | 1:06:13 |
| 23 | 513 | Joel Paulson | 34 | M | Maple Grove | MN | 33:19 (25) | 1:06:27 | ||||
| 24 | 163 | Joel Dunn | 36 | M | Sauk Centre | MN | 33:28 (27) | 1:26 (39) | 22:02 (38) | 1:06:34 | ||
| 25 | 566 | Eric Roesner | 41 | M | Minnetonka | MN | 8:30 (76) | 1:50 (37) | 32:10 (9) | 1:29 (55) | 22:44 (56) | 1:06:42 |
| 26 | 766 | Benjamin Foreman | 36 | M | Saint Louis Park | MN | 6:48 (9) | 2:33 (106) | 34:24 (43) | 1:48 (130) | 21:26 (31) | 1:06:57 |
| 27 | 789 | Taj Melson | 42 | M | Golden Valley | MN | 8:47 (88) | 1:42 (106) | 22:11 (43) | 1:06:58 | ||
| 28 | 175 | Ken Ellingsen | 20 | M | Maple Grove | MN | 8:51 (93) | 1:56 (45) | 34:11 (38) | 1:08 (3) | 20:58 (18) | 1:07:02 |
| 29 | 328 | Bettina Keppers | 33 | F | Duluth | MN | 7:19 (20) | 1:52 (39) | 32:42 (16) | 1:31 (64) | 23:44 (75) | 1:07:06 |
| 30 | 652 | Laura Swartz | 49 | F | St. Louis Park | MN | 8:33 (79) | 1:39 (20) | 33:58 (33) | 1:25 (34) | 21:48 (35) | 1:07:21 |
| 31 | 231 | Kevin Grafft | 55 | M | Chanhassen | MN | 8:22 (68) | 1:59 (56) | 34:00 (35) | 2:00 (174) | 21:18 (27) | 1:07:38 |
| 32 | 160 | Daniel Duff | 51 | M | Duluth | MN | 7:56 (47) | 2:20 (89) | 34:49 (52) | 1:32 (67) | 21:08 (19) | 1:07:44 |
| 33 | 773 | Kevin Olsen | 57 | M | Long Lake | MN | 7:32 (29) | 1:47 (31) | 32:40 (15) | 1:16 (16) | 24:43 (100) | 1:07:56 |
| 34 | 320 | Marcus Kasper | 25 | M | Monticello | MN | 7:18 (19) | 2:28 (99) | 34:45 (50) | 1:19 (23) | 22:09 (41) | 1:07:57 |
| 35 | 83 | Nancy Buselmeier | 32 | F | Buffalo | MN | 9:22 (127) | 1:56 (47) | 36:52 (103) | 1:35 (78) | 18:19 (4) | 1:08:02 |
| 36 | 345 | Leonard Klun | 62 | M | Maple Plain | MN | 7:49 (39) | 2:21 (90) | 34:19 (40) | 1:46 (123) | 21:56 (36) | 1:08:08 |
| 37 | 146 | Stephen Dennison | 21 | M | Maple Grove | MN | 6:40 (6) | 1:37 (17) | 34:41 (48) | 1:39 (97) | 23:44 (76) | 1:08:20 |
| 38 | 282 | Michelle Hoffman | 31 | F | New Hope | MN | 7:29 (28) | 1:41 (25) | 35:53 (74) | 1:27 (42) | 22:18 (46) | 1:08:45 |
| 39 | 197 | Joshua Flynn | 41 | M | Medina | MN | 6:28 (4) | 1:57 (50) | 36:32 (93) | 1:38 (92) | 22:20 (47) | 1:08:53 |
| 40 | 111 | Ryan Collins | 41 | M | St. Louis Park | MN | 8:39 (84) | 1:39 (21) | 33:59 (34) | 1:30 (60) | 23:33 (69) | 1:09:19 |
| 41 | 659 | Nicholas Teetzel | 24 | M | Corcoran | MN | 11:00 (231) | 3:30 (258) | 35:23 (65) | 1:38 (93) | 17:55 (3) | 1:09:24 |
| 42 | 764 | Mariane Walin | 31 | F | Brooklyn Center | MN | 8:06 (52) | 1:43 (27) | 34:32 (45) | 1:36 (84) | 23:39 (72) | 1:09:35 |
| 43 | 268 | Jack Hennen | 15 | M | Cambridge | MN | 7:39 (33) | 1:52 (41) | 34:13 (39) | 1:23 (31) | 24:37 (98) | 1:09:43 |
| 44 | 291 | Jeffrey Huber | 29 | M | Clearwater | MN | 8:27 (74) | 1:59 (55) | 35:04 (57) | 2:02 (181) | 22:21 (49) | 1:09:50 |
| 45 | 688 | Greg Vetter | 36 | M | Coon Rapids | MN | 7:23 (22) | 1:38 (18) | 35:12 (61) | 2:46 (345) | 22:57 (60) | 1:09:54 |
| 46 | 150 | Chris Dirkes | 27 | M | Saint Paul | MN | 7:43 (35) | 1:51 (38) | 33:37 (29) | 1:31 (62) | 25:18 (119) | 1:09:59 |
| 47 | 53 | Kris Birch | 36 | M | Hugo | MN | 8:10 (54) | 2:42 (133) | 34:49 (51) | 1:56 (157) | 22:26 (50) | 1:10:01 |
| 48 | 54 | Shawn Birch | 38 | M | Hugo | MN | 8:17 (62) | 2:54 (169) | 34:42 (49) | 2:05 (204) | 22:06 (40) | 1:10:03 |
| 49 | 210 | Michael Galloway | 39 | M | Blaine | MN | 9:00 (99) | 2:14 (81) | 35:59 (79) | 2:03 (188) | 20:50 (16) | 1:10:03 |
| 50 | 596 | Josh Sell | 37 | M | Waconia | MN | 8:21 (65) | 2:52 (160) | 36:18 (89) | 1:27 (43) | 21:22 (29) | 1:10:18 |