Find the Best Things

The 7 Best Fly Fishing Spots in Minnesota!

mn fly fishing

When it comes to fly fishing—especially for the Minnesota’s three species of trout—you’re going to be hard-pressed to get a pro to give up their secret spots. Trout anglers will find the best fly fishing in the streams of Southeast Minnesota’s Bluff Country or in the fast-moving rivers along the Lake Superior’s North Shore. But in Minnesota, there’s more to fly fishing than just trout. Panfish, crappies, bass, and even opportunistic northern pike will hit a fly with the right pattern. While we don’t have all the secrets of an experienced guide, we’ve got a few thoughts about places where you can put your fly on a fish (trout, or otherwise). Here are our favorites.


1.Badger Creek, Houston County, MN

Badger Creek is a stream that trout anglers will appreciate, but fly anglers may find a bit challenging: Like many of the trout streams in southeast part of the state, it’s narrow and often tree-lined. There are larger streams and rivers in the area, but with waders you’ll have a pretty good day targeting brown and brook (especially upstream) trout. Badger Creek is a native trout stream and thanks to a successful stocking program in the 1970s, is a self-supporting trout habitat with a strong population of brooks and browns. From the town of Houston, head east on Highway 16. Just outside town, turn south on Highway 76, which will start tracking along Badger Creek at the intersection with County 10. Look for easement and state land notices for access to the stream. 

2.Cenaiko Lake at Coon Rapids Dam Regional Park

Fly anglers in the Metro Area will appreciate the both the proximity of Cenaiko Lake, as well as the 5,000-plus rainbow and brook trout that the Minnesota Department of Natural Resources stocks in it every year. Part of the Coon Rapids Dam Regional Park, Cenaiko Lake has no boat access, giving fly anglers plenty of room to fish from the shore or fishing pier. Because it’s a designated trout lake, fishing is only allowed during trout season.

3.St. Croix River

The St. Croix River is a gorgeous, federally-protected waterway that is home to everything from palm-sized panfish to oceanic-sized sturgeon and catfish, as well as world class smallmouth bass. It’s also easily fished with a fly rod from the shore, making it an awesome river for beginners as well as more experienced anglers. It’s also a wide and deep enough river that you can fish it from a drift boat and practice for the big fly fishing trip out west.

4.Baptism River, Lake County, MN

The Baptism River is prime habitat for both brook and rainbow trout, as well as migratory steelhead and coho salmon who visit the river from Lake Superior to spawn. In its upper reaches, before it starts its descent toward the lake, it’s wide enough that fly anglers can easily fish it from the shore. There’s also plenty of space to cast at the mouth. Upstream of Highway 61, though, you’ll want to use waders to reach the best trout habitat.

Don't try to skip rocks upstream. Good advice for life and...for skipping rocks. #onlyinmn

A post shared by Josh Haroldson - MN + Madison (@joshharoldson) on

5.Root River, South Branch, Fillmore County, MN

The South Branch of the Root River is wider than most of the other streams in Southeastern Minnesota, making it easier for fly anglers to cast from the shore, targeting some of the best brown trout habitat in the state. In addition to brooks and browns, smallmouth and rock bass make their homes in the root river. The paved Root River Trail offers easy access to the water, making it a good place for beginning fly anglers to start their quest for the elusive trout.

6.Stoney Brook, Brainerd, MN

In Central Minnesota, you can target brook trout in Stoney Brook near where it flows into Upper Gull Lake. The stream is relatively open and free over overhanging trees as it makes its way through wetlands and coniferous Northland forest. Panfish, crappies, and bass can also be targeted by fly anglers near the mouth of the stream. Since you’re in the neighborhood, why not try and get a northern to hit your fly on Upper Gull Lake?

7.Trout Run Creek, Winona County, MN

With a name like Trout Run, you’d think this creek in Southeastern Minnesota would be overrun with anglers and depleted of fish. As it turns out, though, with plenty of easements and incredibly good management from the DNR, Trout Run Creek is an awesome brown trout fishery. Avoid the portion of the creek that flows through Whitewater State Park, as park visitors increase fishing pressure.

Hot Stories
Select a Minnesota town to find
the Best Things To Do and Places To Go around you