Catfish in Stardew Valley can be caught primarily in the following locations:
- Rivers in Pelican Town and Cindersap Forest
- Riverlands Farm, Forest Farm, and Hill-Top Farm
- Secret Woods pond (southwest corner)
- Witch's Swamp (unlocked after certain quests)
When to catch Catfish:
- During Spring and Fall seasons on rainy days, from 6 AM to 12 AM
- In the Secret Woods and Witch's Swamp, Catfish can also be caught in Summer when it is raining
- Catfish can be caught in Winter only if you use a Rain Totem or Magic Bait (which allows catching regardless of weather or season)
Additional notes:
- Catfish are considered an uncommon fish with a difficulty level of 75 in the fishing minigame
- Using an Iridium Rod with tackle like the Trap Bobber and consuming fishing buff foods can improve your chances of catching Catfish
- Catfish can also be obtained without fishing by finding them in Garbage Cans during Spring and Fall, buying from the Traveling Cart (600-1000g), receiving as gifts from Linus or a max-friendship pet cat
In summary, the best places to catch Catfish are the rivers around Pelican Town and Cindersap Forest, the Secret Woods pond, and Witch's Swamp, but you must fish during rainy weather in Spring or Fall between 6 AM and midnight for the highest chance.