Gregor Townsend's men were on the back foot for much of the first half but still went into the break 10-6 ahead thanks to
a try from Ben White and kicks from Finn Russell.
Marcus Smith kicked two penalties for the visitors and then added another early in the second period to reduce the arrears to 10-9.
Smith then scored a try to put England in front before he kicked a fourth penalty to stretch the lead further.
With 15 minutes left to play a Finn Russell cross kick to the left from first phase put England under pressure and after quick recycling the stand-off kicked to the right. With the English defence stretched hooker Luke Cowan-Dickie - under pressure from Darcy Graham - intentionally knocked the ball into touch, which led to a penalty try for Scotland and yellow card for Cowan-Dickie.
With their opponents down to 14 men, Scotland took advantage and Russell's three-pointer proved to be decisive as they retained the Calcutta Cup.