The difference between these two is that a substantive defense argues that the defendant did not actually commit the act alleged against him or her while a procedural defense simply says that the defendant is not legally liable, regardless of whether he or she commited the alleged act.
In a procedural defense, the defense does not necessarily claim it did not commit the alleged act. Instead, it argues that it is not legally liable. An example of this would be the defense of entrapment. In this defense, the defendant claims that they would not have done the act but for the actions of the government. In such a case, the defendant is admitting that they actually committed the act, but is claiming that they are not liable because of misconduct on the part of the government.
So, a substantive defense says "I didn't do it" while a procedural defense says "Regardless of whether I did it, you can't find me guilty because..."
Procedural defenses are a type of defense in which a defendant argues that they should not be held liable for a charge that has been leveled against them. This form of defense is applicable in criminal law as well as civil law. In criminal proceedings, the use of procedural defense is separate from the question of guilt or innocence of the defendant and is instead based on misconduct in the criminal procedure. In civil proceedings, it is similarly separate from findings against or for the defendant. Examples of procedural defenses include prosecutorial misconduct and entrapment.
Substantive defenses are a type of defense based on the facts of the case. The defendant in this case will need to prove that they did not conduct acts that are required to complete the crime they are charged with. These acts collectively complete a crime and they depend on the crime itself. A prosecutor will need to prove that this set of acts was committed by the defendant to achieve a guilty verdict. On the other hand, the defendant will deny committing these acts in their defense.