Épluchez les carottes et les pommes de terre, puis coupez-les en petits dés. Coupez également les haricots verts en morceaux de taille similaire.
Faites cuire séparément les carottes, les pommes de terre, les petits pois et les haricots verts dans de l’eau bouillante salée jusqu’à ce qu’ils soient tendres mais encore croquants (environ 10 minutes pour les légumes coupés en dés). Égouttez et laissez refroidir.
Faites cuire les œufs durs en les plongeant dans de l’eau bouillante pendant environ 10 minutes. Refroidissez-les sous l'eau froide, écalez-les et coupez-les en dés ou en quartiers.
Coupez les olives en rondelles, et les cornichons en petits morceaux si vous les utilisez.
Dans un bol, mélangez la mayonnaise, la crème fraîche, la moutarde, le jus de citron (ou le vinaigre), le sel et le poivre. Ajustez les assaisonnements selon votre goût.
Dans un grand saladier, mélangez les légumes cuits refroidis, les œufs (si utilisés), et les autres ingrédients optionnels.
Incorporez la sauce à la mayonnaise et mélangez délicatement jusqu'à ce que les légumes soient bien enrobés.
Réfrigérez la salade pendant au moins 1 heure avant de servir pour permettre aux saveurs de se développer.
Servez la salade macédoine bien froide, accompagnée de pain ou en tant qu’accompagnement pour un plat principal.