If all ur optional parameters are the same type, u can use the 'params' keyword. U could use it even if they weren't the same type, but u would need to use an object array which u dont want. Otherwise, the only solution is to overload ur 400 different functions, C# does not support optional parameters. params[^]