Un camp de gitans sillonne les steppes de Bessarabie. Au feu de joie, une famille gitane prépare le dîner, des chevaux paissent à proximité et un ours apprivoisé se trouve derrière la tente. Petit à petit, tout devient silencieux et tombe dans un rêve. Dans une seule tente, le vieil homme se réveille, attendant sa fille Zemfira, qui est allée se promener dans les champs. Et puis Zemfira apparaît avec un jeune homme inconnu du vieil homme. Zemfira explique qu'elle l'a rencontré derrière la brouette et l'a invité au camp qu'il était poursuivi par la loi et qu'il voulait être un gitan. Son nom est Aleko. Le vieil homme invite cordialement le jeune homme à rester aussi longtemps qu'il le souhaite et se dit prêt à partager du pain et un abri avec lui.
Le matin, le vieillard réveille Zemfira et Aleko, le camp se réveille et se lance dans une foule pittoresque. Le cœur d'un jeune homme se contracte de désir à la vue d'une plaine vide. Mais à quoi aspire-t-il? Zemfira veut le savoir. Une conversation s'ensuit entre eux. Zemfira craint de regretter la vie qu'il a quittée, mais Aleko la rassure et lui dit que sans regret il a quitté "la captivité des villes étouffantes". Dans la vie qu'il a abandonnée, il n'y a pas d'amour, ce qui signifie qu'il n'y a pas de plaisir, et maintenant son désir est d'être toujours avec Zemfira. Le vieil homme, en entendant leur conversation, leur raconte une vieille tradition à propos du poète, qui fut jadis exilé par le roi dans ces régions et languit dans son cœur, malgré l'amour et les soins des habitants. Aleko reconnaît dans le héros de cette légende Ovide et s'étonne des vicissitudes du destin et de l'éphéméralité de la gloire.
Aleko erre depuis deux ans avec le camp, libre, comme les gitans eux-mêmes, ne regrettant pas les abandonnés. Il conduit des villages d'ours et gagne son pain. Rien ne confond la paix de son âme, mais un jour il entend Zemfira chanter une chanson qui le rend confus. Dans cette chanson, Zemfira admet qu'elle est tombée amoureuse de lui. Aleko lui demande d'arrêter de chanter, mais Zemfira continue, puis Aleko se rend compte que Zemfira lui est infidèle. Zemfira confirme les hypothèses les plus terribles d'Aleko.
La nuit, Zemfira réveille son père et dit qu'Aleko pleure et gémit dans un rêve, l'appelle, mais son amour a envoyé Zemfira, son cœur lui demande sa volonté. Aleko se réveille et Zemfira va vers lui. Aleko veut savoir où était Zemfira. Elle répond qu'elle était assise avec son père parce qu'elle ne pouvait pas supporter le genre de tourment mental Aleko qu'il a vécu dans un rêve. Aleko admet qu'il a vu la trahison de Zemfira dans un rêve, mais Zemfira le persuade de ne pas croire aux rêves astucieux.
Le vieux gitan demande à Aleko de ne pas être triste et insiste sur le fait que le désir le détruira. Aleko admet que la raison de sa tristesse est l'indifférence de Zemfira envers lui. Le vieil homme console Aleko, dit que Zemfira est un enfant, que le cœur d'une femme aime en plaisantant, que personne n'est libre d'ordonner au cœur d'une femme d'en aimer un, comment ordonner à la lune de geler. Mais Aleko, rappelant les heures d'amour passées avec Zemfira, est inconsolable. Il déplore que "Zemfira ait refroidi", que "Zemfira soit infidèle". Comme avertissement, le vieil homme parle à Aleko de lui-même, de sa jeunesse, de son amour pour la belle Mariula et de la manière dont il a finalement atteint la réciprocité. Mais la jeunesse est vite passée, encore plus vite - l'amour de Mariula. Une fois qu'elle est partie avec un autre camp, laissant sa petite fille, cette même Zemfira. Et depuis, «toutes les vierges du monde» ont déshonoré le vieil homme. Aleko demande comment le vieil homme n'a pas pu se venger des délinquants, comment il n'a pas pu enfoncer le poignard dans le cœur du ravisseur et de sa femme infidèle. Le vieil homme répond que rien ne peut retenir l'amour, rien ne peut être rendu, "ce qui s'est passé ne se reproduira pas". Aleko assure au vieil homme que lui-même n'est pas comme ça, il ne peut pas renoncer à ses droits ni même se venger.
Pendant ce temps, Zemfira est en rendez-vous avec une jeune gitane. Ils se mettent d'accord sur une nouvelle date ce soir après le coucher de la lune.
Aleko dort anxieusement et, au réveil, ne trouve pas Zemfira à proximité. Il se lève, quitte la tente, il est entouré de suspicion et de peur, il erre autour de la tente et voit une traînée à peine perceptible à la lumière des étoiles menant aux monticules, et Aleko part sur cette piste. Soudain, il voit deux ombres et entend les voix de deux amants qui ne peuvent pas se séparer. Il reconnaît Zemfira, qui demande à son amant de s'échapper, mais Aleko lui enfonce un couteau ... Dans l'horreur, Zemfira dit qu'il méprise les menaces d'Aleko et le maudit. Aleko la tue aussi.
Dawn a trouvé Aleko assis sur une colline avec un couteau sanglant à la main. Devant lui, deux cadavres. Des membres de la tribu disent au revoir aux morts et creusent des tombes pour eux. Une vieille gitane est assise dans ses pensées. Après que les corps des amants ont été enterrés, il vient à Aleko et dit: "Laissez-nous, fier homme!" Il dit que les gitans ne veulent pas vivre à côté du tueur, avec un homme qui «uniquement pour lui-même» veut être libre.
Le vieil homme l'a dit, et le camp a rapidement décollé et a disparu dans la steppe. Un seul chariot est resté dans le champ fatidique. La nuit est tombée, mais personne n'a mis le feu devant elle et personne n'a passé la nuit sous son toit.