The ubiquitous plaid flannel shirt reaches new heights in our incredibly soft Perfect version.

4 out of 5 Customer Rating
Type: Regular
Select size
color: Select color
Was $89, Save $30 $59
Item #1L21_2
Great Catch Guarantee insignia

100% Customer Satisfaction

has been our commitment since 1856. It’s who we are. If you aren’t happy with a product or service, we want to know about it. And we’ll make it right. That’s the Orvis Way.

  • Pure cotton flannel is brushed for incredible softness
  • Traditional flannel shirt styling with two button-through patch chest pockets
  • Faux-suede trim on the neckband is washable
  • Spread collar, two-button adjustable cuffs, and a handy locker loop
  • In an array of classic plaids
Select size
color: Select color
Was $95, Save $36 $59
Item #2NLS_2
Great Catch Guarantee insignia

100% Customer Satisfaction

has been our commitment since 1856. It’s who we are. If you aren’t happy with a product or service, we want to know about it. And we’ll make it right. That’s the Orvis Way.

  • Pure cotton flannel is brushed for incredible softness
  • Traditional flannel shirt styling with two button-through patch chest pockets
  • Faux-suede trim on the neckband is washable
  • Spread collar, two-button adjustable cuffs, and a handy locker loop
  • In an array of classic plaids

The Story

The plaid fabric in these Perfect shirts is the softest flannel you will ever find, thick and brushed on both sides for maximum softness and comfort. Long-sleeved shirt with button-through patch pockets. Distinctive washable faux-suede trim on the outside neckband, bound buttonholes at the pockets, and locker loop. Long shirttail hem stays tucked in. Spread collar, two-button adjustable cuffs.

Pure cotton. Washable. Imported.

Sizes S(34-36), M(38-40), L(42-44), XL(46-48), XXL(50-52). Tall sizes 2" longer in body and sleeve.

  • bvseo_sdk, dw_cartridge, 18.2.0, p_sdk_3.2.0
  • CLOUD, getReviews, 31ms
  • reviews, product
  • bvseo-msg: Unsuccessful GET. status = 'ERROR', msg = 'Not Found.'; Unsuccessful GET. status = 'ERROR', msg = 'Not Found.';