| Place | Bib | Name | Age | Sex | City | State | Time |
|---|---|---|---|---|---|---|---|
| 1 | 649 | Nathan Swenson | 34 | M | Afton | MN | 1:53:17 |
| 2 | 621 | Derek Savela | 39 | M | Saint Paul | MN | 1:55:10 |
| 3 | 614 | Jake Rossman | 30 | M | Minneapolis | MN | 1:55:51 |
| 4 | 437 | Ben Brose | 36 | M | Duluth | MN | 2:00:29 |
| 5 | 513 | Andrew Hollatz | 42 | M | Duluth | MN | 2:03:57 |
| 6 | 478 | Liam Fife | 23 | M | Duluth | MN | 2:09:52 |
| 7 | 479 | Barry Fischer | 50 | M | Cloquet | MN | 2:10:37 |
| 8 | 691 | Mitch Zuidema | 29 | M | Champlin | MN | 2:12:42 |
| 9 | 599 | Alexander Pippin | 25 | M | Spooner | WI | 2:13:34 |
| 10 | 521 | Ian Jensen | 33 | M | Duluth | MN | 2:17:38 |
| 11 | 512 | Bryce Holak | 24 | M | Duluth | MN | 2:18:33 |
| 12 | 405 | David Andresen | 35 | M | Ironwood | MI | 2:19:11 |
| 13 | 588 | Andrew Olson | 33 | M | Duluth | MN | 2:20:09 |
| 14 | 681 | Mark Williams | 42 | M | Excelsior | MN | 2:21:55 |
| 15 | 453 | Dennis Curran | 40 | M | Plymouth | MN | 2:22:17 |
| 16 | 596 | Daniel Peters | 31 | M | Minneapolis | MN | 2:22:53 |
| 17 | 633 | Alex Simanski | 31 | M | Red Wing | MN | 2:23:15 |
| 18 | 420 | Dan Blascyk | 44 | M | Duluth | MN | 2:23:16 |
| 19 | 659 | Nathaniel Van Loon | 28 | M | Richfield | MN | 2:24:52 |
| 20 | 615 | Jonathan Rova | 49 | M | Duluth | MN | 2:26:10 |
| 21 | 584 | Chad O'Connor | 40 | M | Duluth | MN | 2:26:25 |
| 22 | 527 | Matthew Kennedy | 23 | M | Saint Paul | MN | 2:26:43 |
| 23 | 662 | Kamden Vedder | 40 | M | Lakeville | MN | 2:27:58 |
| 24 | 536 | Brian Kutz | 35 | M | Silver Bay | MN | 2:28:21 |
| 25 | 598 | Nick Peterson | 30 | M | Minneapolis | MN | 2:28:36 |
| 26 | 579 | Matt Nixon | 40 | M | Duluth | MN | 2:29:58 |
| 27 | 475 | Sebastian Fallas | 28 | M | New Brighton | MN | 2:30:03 |
| 28 | 627 | Jeremy Segal | 37 | M | Eagan | MN | 2:30:30 |
| 29 | 637 | Loren Smith | 33 | M | Little Falls | MN | 2:30:32 |
| 30 | 488 | Scott Gischia | 47 | M | Two Harbors | MN | 2:31:04 |
| 31 | 652 | Mitchell Thelen | 39 | M | Little Falls | MN | 2:31:34 |
| 32 | 449 | Scott Coles | 46 | M | Washburn | WI | 2:35:17 |
| 33 | 487 | Colin Gettle | 36 | M | Duluth | MN | 2:37:29 |
| 34 | 639 | Andy Sonnesyn | 34 | M | Minneapolis | MN | 2:40:18 |
| 35 | 684 | Peter Wilton | 34 | M | Duluth | MN | 2:40:48 |
| 36 | 661 | Caleb Vandewege | 30 | M | Duluth | MN | 2:41:03 |
| 37 | 472 | John Ellingson | 58 | M | Minnetonka | MN | 2:41:07 |
| 38 | 411 | Brian Bayer | 26 | M | Minneapolis | MN | 2:43:22 |
| 39 | 481 | Matt Foehrenbacher | 38 | M | Bloomington | MN | 2:44:44 |
| 40 | 635 | Eric Smith | 35 | M | Minneapolis | MN | 2:45:58 |
| 41 | 600 | Chris Platcek | 34 | M | Two Harbors | MN | 2:48:25 |
| 42 | 656 | Tim Tozer | 53 | M | Minneapolis | MN | 2:51:35 |
| 43 | 412 | Brian Belich | 54 | M | Carlton | MN | 2:51:47 |
| 44 | 492 | Ben Graham | 31 | M | Duluth | MN | 2:52:40 |
| 45 | 416 | Thomas Besonen | 39 | M | Duluth | MN | 2:53:28 |
| 46 | 401 | Caius Anderson | 31 | M | Falcon Heights | MN | 2:58:35 |
| 47 | 613 | Carl Rickard | 29 | M | Brooklyn | NY | 2:58:36 |
| 48 | 581 | Jonathan Nyhus | 27 | M | Duluth | MN | 3:00:16 |
| 49 | 638 | Ryan Smith | 36 | M | Superior | WI | 3:00:39 |
| 50 | 594 | Allen Pederson | 65 | M | Spooner | WI | 3:00:59 |