Le centre Joe Thornton des Sharks, qui est devenu le 37e joueur de l'histoire à atteindre le plateau des 1400 matchs en carrière, a participé à deux buts.
L'attaquant Sam Bennett a marqué l'unique but des Flames (17-16-2) en troisième période.
Chad Johnson a concédé quatre buts sur 34 lancers en route vers sa troisième défaite de suite.
Les Flames, qui avaient triomphé des Coyotes de l'Arizona 4-2 lundi au Gila River Arena, s'inclinaient pour une troisième fois à leurs quatre derniers affrontements.
Marleau a lancé San Jose en avant 1-0 à 5:35 du deuxième tiers en battant Johnson avec un tir du revers tout près de la zone réservée au gardien. Il obtenait son neuvième but de l'année.
San Jose a doublé son avance à 9:18 quand le tir de Martin, décoché du haut du cercle gauche, s'est frayé un chemin malgré la circulation dense devant le filet de Johnson.
Donskoi a fait 3-0 à 14:23 en touchant la cible avec un lancer du bas du cercle gauche. Il a ainsi mis fin à une disette de 22 matchs sans but. Il est revenu à la charge à 16:19 avec un but sans aide grâce à un tir de l'enclave après avoir intercepté une tentative de dégagement de Mikael Backlund.
Bennett a accepté une passe de Matthew Tkachuk dans l'enclave pour faire bouger les cordages à 1:19 du troisième vingt pour porter le pointage 4-1.