I would love it if the Google Calendar team developed a feature to share the event details in one's calendar, for only a small time period.
ale says that isn't possible. To me, it seems silly that the Google Calendar team thinks it should be all-or-nothing.
The screenshot below shows how you can share just the free/busy version publicly (where it says "Access permissions: Make available to public"). You can also share access to people individually, as I have done — you can see that in the "Share with specific people" section. You can then share the "Public URL to this calendar" (by scrolling down to the Integrate Calendar section). That link, https://calendar.google.com/calendar/embed?src=username%40gmail.com , where I have put "username" in place of your username, displays as a (slightly ugly) web page. But the web page works well nonetheless — a new calendar can be used for a company. A company can collaborate on a calendar via "Share with specific people", with editing privileges shared to the administrators' email addresses, then that calendar can be put on the company's website, using the public URL just mentioned.
The format of that URL is public knowledge, so if someone knows your email address, they should be able to create that URL (full-stops are superfluous in Gmail usernames). It will respect your privacy settings (test it with a private/incognito browser tab), including granular email address-specific privacy settings.
But, your friend should type your email address into "Search for people" on the home page of calendar.google.com, as that view is much more beautiful, and shows your calendar alongside theirs. That method is also temporary; your calendar won't stay in their app.
The iCal address is useful for iPhone users (clicking that link on an iPhone, for example on WhatsApp, will automatically open up the option to subscribe to the calendar, in the iPhone calendar app). However, Android users who click on that link will just download the .ics file (not very useful). Android users need to copy the iCal link, then paste it into "Add calendar: From URL" in the Google Calendar web app, desktop site.
The easiest way to share a small portion of your calendar is to take a screenshot of the schedule view.
Personally, I have shared my main Google Calendar feed with my secondary Google account, but only as the free/busy version. This allows me to take a screenshot of only the busy times (schedule view, on desktop), for people who may not use any of the above methods.