> if(!Whatever.TryParse<Thingy>(input, out var output)) output = some-sane-default;
I can't think of many (probably any) situations where I'd want to find that.
If _no_ input is provided (i.e., the parameter is optional), sure, using a sane default makes sense.
If _invalid_ input is provided, for the love of god please don't pretend like nothing's wrong.
If someone walks into a florist and asks for a coffee, the correct answer is not for them to be handed a rose. They're going to cut their mouth all up when they try and drink it.
Your method/module/program does not have an output defined for that set of inputs. Make that obvious rather than just doing wrong or non-obvious things in a way that quickly makes your program almost impossible to reason about. Do yourself a favour and clearly raise the issue and leave yourself a stack trace pointing directly to the issue instead of setting yourself up for the vague bug about incorrect behaviour when someone catches this in a few months.