Internet sharing via Thunderbolt Cable?
It is possible to share Internet from Ethernet to Thunderbolt!

Your gateway (iMac) Internet Sharing settings are ok:
Share your connection from: Ethernet &gt; to computers using: Thunderbolt bridge

Choose the Thunderbolt Bridge device in the network preferences of the  client and set Configure IPv4 to Using DHCP.


Open Terminal on both Macs and enter ifconfig respectively.
The gateway (your iMac) should show a bridge device bridge0 crowded with the Thunderbolt devices (probably en2 &amp; en3) with the IP-address 192.168.2.1:
...
bridge0: flags=8863&lt;UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST&gt; mtu 1500
    options=63&lt;RXCSUM,TXCSUM,TSO4,TSO6&gt;
    ether 6a:aa:ca:11:23:00 
    inet6 fe80::68aa:caff:fe11:2300%bridge0 prefixlen 64 scopeid 0x8 
    inet 192.168.2.1 netmask 0xffffff00 broadcast 192.168.2.255
    Configuration:
        id 0:0:0:0:0:0 priority 0 hellotime 0 fwddelay 0
        maxage 0 holdcnt 0 proto stp maxaddr 100 timeout 1200
        root id 0:0:0:0:0:0 priority 0 ifcost 0 port 0
        ipfilter disabled flags 0x2
    member: en2 flags=3&lt;LEARNING,DISCOVER&gt;
            ifmaxaddr 0 port 6 priority 0 path cost 0
    member: en3 flags=3&lt;LEARNING,DISCOVER&gt;
            ifmaxaddr 0 port 7 priority 0 path cost 0
    nd6 options=1&lt;PERFORMNUD&gt;
    media: autoselect
    status: active
...

The client (your MacBook Pro) should also show a bridge device bridge0 probably containing en1 (a MBP without Ethernet) or en2 (a MBP with Ethernet) and maybe another en device. Usually its IP-address is 192.168.2.2.
...
bridge0: flags=8863&lt;UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST&gt; mtu 1500
    options=63&lt;RXCSUM,TXCSUM,TSO4,TSO6&gt;
    ether 6a:aa:ca:22:11:00 
    inet 192.168.2.2 netmask 0xffffff00 broadcast 192.168.2.255
    inet6 fe80::68aa:ca22:fe11:e000%bridge0 prefixlen 64 scopeid 0x8 
    Configuration:
        id 0:0:0:0:0:0 priority 0 hellotime 0 fwddelay 0
        maxage 0 holdcnt 0 proto stp maxaddr 100 timeout 1200
        root id 0:0:0:0:0:0 priority 0 ifcost 0 port 0
        ipfilter disabled flags 0x2
    member: en1 flags=3&lt;LEARNING,DISCOVER&gt;
            ifmaxaddr 0 port 6 priority 0 path cost 0
    nd6 options=1&lt;PERFORMNUD&gt;
    media: autoselect
    status: active
...

If the network 192.168.2.0/24 is already occupied by the Ethernet network, the next network 192.168.3.0/24 will be used.

If Ethernet to Thunderbolt Internet Sharing is enabled, the Target Display Mode doesn't work reliably here!