My girls are this way. My oldest was like a koala stuck to my leg or shoulder everywhere we went until she was 5. My youngest, now 5, still takes lots of time to warm up. We have noticed that they like to observe for a while (sometimes a LONG while) before they join in, but often they really enjoy observing and will talk about it later as if they had been fully participating. Things that have helped us:
-Prep the child. Tell them casually about the place you are going, what it might sound and smell like, who you might see there, what activities will take place.
-Arrive a few minutes early so you both can take in all the sights and sounds and greet friends one at a time as they arrive. This is a major help, still, for all 3 of my kids.
-Don’t expect or push him/her to participate. Let your child know that it is ok to watch. My kids have loved to use a camera since they were two. It helps them feel like they are involved in a very non-threatening way.
-Let them know you will be there and don’t make a fuss if they want to be with you the whole time.
-Bring a snack and a quiet activity they enjoy. My 5 year old used to bring crayons to the playground! She loved to go, but for the first hour would sit next to me and color, and then go on the swings for 10 minutes before we left. Now, she runs through the gate! (But sometimes likes to walk around with me before she jumps in)
-Be ready to leave a little early and don’t feel badly- your child will pick up on it. Just say something like, well, it looks like we’re ready to go….
-Praise him/her for trying and say that you’re looking forward to next time. (But no pressure)