Yet another approach...using Virtual Layer.
Above is an example with soil polygon layer with red vochtig zand and green nat zandleem is defined in soiltype field. Red polygon (your 39a) is on my_polygon layer.
By selecting menu Layer | Add Layer | Add/Edit Virtual Layer and after [import] your layers, you can set up a query like below:

The query is:
SELECT round(st_area(v_zand)/st_area(my_polygon.geometry)*100,3)||'%' AS 'voching zand (%)'
FROM my_polygon,
(SELECT st_intersection(soil.geometry, my_polygon.geometry) AS v_zand
FROM soil, my_polygon WHERE soil.soiltype = 'vochtig zand')
When you open the attribute table of the virtual layer, it will show the percentage of vochtig zand.
Please change layer/field name in the SQL syntax as required.
EDIT ... as suggested by @artwork21
SELECT
CASE
WHEN st_area(v_zand) > (st_area(my_polygon.geometry) - st_area(v_zand)) THEN 'vochtig zand'
WHEN st_area(v_zand) = (st_area(my_polygon.geometry) - st_area(v_zand)) THEN 'equal'
WHEN st_area(v_zand) < (st_area(my_polygon.geometry) - st_area(v_zand)) THEN 'nat zandleem'
END
AS Predominant
FROM my_polygon,
(SELECT st_intersection(soil.geometry, my_polygon.geometry) AS v_zand
FROM soil, my_polygon WHERE soil.soiltype = 'vochtig zand')
