OP could get decent upper body gains at home with just a pull up bar and a few decent resistance bands/weights However, for the same investment as it would take to get a good full body program going at home where you'll actually build a solid body lower body too, you might as well just join a gym.
I personally like being in a gym because it puts me in that mindset that this place is exclusive for lifting weight. I have no attachment to home or any of the things there like TV, kids, any stress, etc. Before I actually committed myself to joining a gym and going full time I did the p90x thing and the Insanity videos. I got little to no gains doing them aside from a marginal increase in strength. Maybe back then my diet wasn't on point so I'm sure that was a factor, but I've seen significant gains now that I stick to free weight in the gym.
I think calisthenics are great, I always do dips and pull ups, but you just can't replicate certain things at home that I think are essential to building up a nice body. At a certain point, to gain more muscle you need to gain more strength (and lift in that 3-6 rep range) and you simply can't do that doing just body weight after enough time.