Double strike collapses two combat steps into one creature. The attacker hits in the first-strike damage step, then hits again with the regular damage, which means a blocker that would have traded now dies before it can swing back, and a creature that would have survived one hit eats two. On offense it is the difference between a four-power threat and an eight-power threat the opponent has to answer immediately. On defense it turns a blocker into a clean executioner: most attackers die to the first-strike damage before they assign anything at all.
What it really rewards is anything that scales with damage dealt. Lifelink doubles. Trample tramples twice, once through whatever blockers existed and once through whatever survived. Combat-damage triggers fire twice. A pump spell that adds three power adds six damage across the turn. This is why double strike tends to live on midrange and finisher bodies rather than on one-drops: the keyword's value is roughly proportional to the power it is multiplying, and a 1/1 with double strike is still a 1/1 the opponent can ignore.
The honest ceiling is that double strike does nothing against removal, nothing against a sweeper, and nothing in a stalled board where it cannot attack profitably. It also draws answers the way any large threat does, and because the body usually costs a premium, losing it hurts more. Double strike on the wrong creature is a tax you paid to be removed faster.