Согласно статье MSDN, есть некоторые различия в определении того, что называется параметром и что называется аргументом:
Параметр:
Параметр представляет значение, которое процедура ожидает от вас при вызове. Объявление процедуры определяет ее параметры.
Аргумент:
Аргумент представляет значение, которое вы передаете параметру процедуры при вызове процедуры. Вызывающий код предоставляет аргументы при вызове процедуры.
Также есть отличная цитата, как это понять на примере из реальной жизни :
Чтобы передать эту информацию процедуре, процедура определяет параметр, и вызывающий код передает аргумент этому параметру. Вы можете рассматривать параметр как место для парковки, а аргумент - как автомобиль. Так же, как разные автомобили могут парковаться на парковке в разное время, вызывающий код может передавать разные аргументы одному и тому же параметру при каждом вызове процедуры.