Marvel Studios decided against using any Sherlock references in Avengers: Infinity War despite both Robert Downey, Jr. (Iron Man/Tony Stark) and Benedict Cumberbatch (Stephen Strange/Doctor Strange) having played the British detective on the big and small screen respectively. Downey has portrayed the iconic character twice now in Sherlock Holmes (2009) and Sherlock Holmes: A Game of Shadows (2011). He is set to reprise the role for the third time in 2020 in the still-untitled threequel from director Guy Ritchie. Cumberbatch has played the part in the critically-acclaimed BBC series Sherlock for four seasons, although there’s no official word yet for a fifth outing for the show.
Stark and Strange have a lot of things in common. Both smart, snarky and never intended to be a hero, but over the years, they’ve found themselves dedicated to fulfilling their duties as superheroes. Given both their egotistical nature and determination to stop Thanos, the two butt heads a lot in Avengers: Infinity War. This opened up a lot of opportunities for Marvel Studios’ to incorporate a “no sh*t, Sherlock” remark – a nice reference to the actors’ both having played the private detective outside of their Marvel gigs. However, the filmmakers behind the movie opted not to do it.
Based on Joe’s comment, the filmmakers consciously veered away from using any Sherlock jokes because people are anticipating it. Avengers: Infinity War was definitely about subverting expectations, after all.
It’s uncertain if there will be more interactions between Stark and Strange given that it seems like they have very different paths moving forward. While Iron Man’s MCU narrative is presumably coming to a close, the Sorcerer Supreme’s adventure has just begun. After Avengers 4, he’s tipped to return on the big screen in a still-unannounced Doctor Strange 2. One can even argue that Strange can take Stark’s place as the franchise’s resident snarky genius once the genius, billionaire walks away from his superhero gig.