In your UI listing file, you should add the custom columns under the columns node and add the same name as in the 3rd party module's 'columns' node (so when files are loaded, the content is merged under the same keys).
For example my Vendor/Module/view/adminhtml/ui_component/customer_listing.xml
is adding the billing phone number column to the vendor/magento/module-customer/view/adminhtml/ui_component/customer_listing.xml
:
<listing xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Ui:etc/ui_configuration.xsd">
<columns name="customer_columns">
<column name="billing_telephone" sortOrder="60">
<settings>
<filter>text</filter>
<editor>
<editorType>text</editorType>
<validation>
<rule name="validate-telephone" xsi:type="boolean">true</rule>
</validation>
</editor>
<label translate="true">Phone</label>
</settings>
</column>
</columns>
</listing>
and in order to ensure the proper module loading order position, in my module.xml
file I have:
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="Vendor_Module">
<sequence>
<module name="Magento_Customer"/>
</sequence>
</module>
</config>