You can't use a column name as a parameter; you should instead consider constructing your query this way:
SqlCommand command =
new SqlCommand(
String.Format(@"SELECT min(Score)
FROM MenAthletics WHERE [{0}] < @result;",
sportEvent),
connect);
command.Parameters.AddWithValue("@result", result);
This kind of sql is called "dynamic sql" and can be an effective way of constructing queries on the fly.
However, there are pitfalls. As well as validating the user input, also make sure that the user you are connecting to the database with only has enough permissions to carry out the actions you want to do.
Another approach, which is less elegant, but can be placed directly into a stored procedure, is to use a CASE statement;
For example:
SELECT min(Score)
FROM MenAthletics
WHERE
CASE
WHEN @sportEvent = 'SomeColumnName' THEN SomeColumnName
WHEN @sportEvent = 'SomeColumnName2' THEN SomeColumnName2
END < @result;
This gets very tedious to both create and maintain on large tables. The advantage is that the query is not dynamic.