Your constructor for Deposit takes two parameters:
public Deposit(string description, decimal amount) : base("Deposit", amount)
Since you're setting "Deposit" in the call to base(), you don't need 'string description' in that constructor. It should look like:
public Deposit(decimal amount) : base("Deposit", amount)
The following line should no longer throw an error:
fredSavings.AddTransaction(new Deposit(500.00M));
Additional Explanation: Constructors are not inherited like members or properties, but are unique to both the child and parent. The child (Deposit) has to invoke the base class's (IncreaseTransaction) constructor, but it does not need to require the same parameters in its own constructor.
Here is an old (but good) discussion of why this is the case: Why are constructors not inherited?