One is something which is widely popular and involves subscribing to a read-only view the iCloud calendar and the other is a bit involved but gives you Read-Write access to the calendar. iCloud calendar supports the IETF standard known as CalDAV which is all really nice but it doesn't provide users an easy access to it's URL, which can then be added to Thunderbird.
Start off by creating a new app (or skip if you already have one) from this URL - https://appleid.apple.com/account/manage
Then click on: App-Specific Passwords