Media playback is not supported on this device
England took the lead through Harry Kane's early close-range strike, but Samuel Umtiti and Djibril Sidibe gave France a 2-1 lead.
Kane equalised from the penalty spot after Raphael Varane was sent off, but Dembele's low finish in the 78th minute earned victory.
Who stood out in the thriller at Stade de France?
Burnley's keeper had no luck. Made two fine saves from Olivier Giroud and Ousmane Dembele that ended in goals for Samuel Umtiti and Djibril Sidibe.
Jones at times looked the most assured of England's back three, which shouldn't be taken as a huge compliment. However, he didn't disgrace himself.
Poor night but it should be remembered he has been short of match action. Struggled with France's vibrant attack.
Not the assured and calm performer we have seen for Chelsea. Lost Olivier Giroud in the lead-up to France's first goal.
Very decent night for the Tottenham player. Looked solid and assured and showed a good temperament on his England debut.
Once again proved more than an able deputy for Danny Rose. Put Harry Kane's first goal on a plate and also brought a fine save from France keeper Hugo Lloris.
More effective than against Scotland and won the penalty with a typical surge into the area.
Tough night but lacked support and found it hard to shackle the rampaging Paul Pogba.
Great invention to play a key part in Kane's opening goal but so frustrating at other times with a lack of end product.
Very poor. Wandered ineffectively around midfield in the first half and lost the ball far too often.
Quite simply a natural goalscorer and proved again he is England's main marksman on the pitch. Should keep the captaincy permanently now.
Jack Butland (for Heaton, 45 minutes) 7: Excellent. Made fine saves and had no chance with the goal he conceded. Enhanced his reputation.
Kyle Walker (for Bertrand, 45 minutes) 6: Surprisingly sent on ahead of Aaron Cresswell to operate on the left flank. A right-back - no more no less.
Adam Lallana (for Trippier, 76 minutes) No rating.
Aaron Cresswell (for Jones, 80 minutes) No rating.
Made a good, low save from Ryan Bertrand's strike, but was beaten twice by Tottenham team-mate Harry Kane.
Supported the forward players time and time again with intelligent overlapping runs and got on the scoresheet by slotting home shortly before half-time.
Real Madrid's three-time Champions League winner brought down Dele Alli for a penalty early in the second half and was shown a straight red card.
Stabbed home France's goal from a set-piece, but lucky not to concede a penalty when challenging Raheem Sterling inside the box.
The Monaco player, heavily linked with Chelsea, broke forward in the early stages, but lasted only 21 minutes as he came off injured after colliding with the advertising boards.
Wonderful. The 20-year-old showcased his marvellous talent with nimble footwork, sending John Stones to the deck with a stunning turn in the lead-up to the second goal and netting a clinical winner late on.
Imposing. Kept the ball moving in the middle of the park and rarely wasted possession. No England player managed to get close, especially after some majestic work to get past Gary Cahill.
Hardworking as always, nicked possession back for his side and neat on the ball. Can now look forward to a few weeks off after a Premier League title-winning season with Chelsea.
Gave the ball away for England's opener on his first international start but recovered well with some impressive work down the left.
Pace, trickery, industry. You can see why the exciting Monaco youngster has been linked with a big-money move. Caused the England backline all sorts of problems, but struck the crossbar when he should have scored into a gaping net.
The Arsenal frontman had a stunning volley disallowed for offside but barely had a kick. Sacrificed after Raphael Varane's dismissal.
Lucas Digne (for Mendy, 21 minutes) 5: Looked uncomfortable when asked questions defensively.
Laurent Koscielny (for Giroud, 52 minutes) 6: Posed few problems by England.
Christophe Jallet (for Sidibe, 90 minutes) No rating.
Ousmane Dembele scored a late winner as 10-man France came from behind to beat England 3-2 in a friendly in Paris.