Для объединения двух словарей в Python 3.9+ наиболее эффективным и современным способом является использование оператора | (например, d1 | d2), так как он создает новый словарь, объединяя содержимое обоих. В то время как {**d1, **d2} также работает, этот способ требует больше шагов под капотом. Метод dict.update() изменяет первый словарь на месте, что может быть не всегда предпочтительно, если важно сохранить оригинальные словари.
Для подробностей по работе со словарями можно ознакомиться с материалами на моем сайте PythonLib.ru