I posted this in another thread, but thought it might deserve its own thread. I went through the last 10 or so champions and looked at their integral/essential parts (so top 4 to 5 players) and how the team acquired them. The only player acquired through free agency to be a top 2 player for a title team was Lebron (maybe Billups though I think both the Wallaces and Hamilton were better than Chauncey that season, though Chauncey got hot in the playoffs).
So here is the list (Edit to include Golden State)
GS - Draft (Curry, Thompson, Green, Barnes), Trade (Bogut, Iguodala)
San An - Draft (TD, Parker, Manu) Draft day trade (Leonard)
Miami - Draft (Wade, Haslem), FA (James, Bosh)
Dallas - Draft day trade (Dirk), Trade (chandler, terry), FA (kidd)
Lakers - Trade prior to playing (Kobe), Trade (Pau, Odom), Draft (Bynum)
Celtics - Draft (PP. Rondo, Perkins), Trade (KG, Allen)
Miami - Draft (Wade, Haslem), Trade (Shaq, Toine), FA (Payton)
Detroit - Trade (Wallace, Wallace, Hamilton), FA (Billups), Draft (Prince)
Also of note, every single team aside from Detroit was essentially anchored by a player that the team drafted (LA and Dallas acquired their anchor before they ever played in the league so they were essentially drafted by them). Now a lot of those teams had a fair amount of players in the rotation that were acquired via free agency, but a rotation player is not an anchor. To get an anchor you need to draft them or trade for them and historically draft works better. And obviously not all of those drafted anchors were top 5 picks (Dirk, PP, and Kobe were not), but it certainly seems to help. Of note, most of the players acquired via trade that became anchor/star/etc. were also top 5 picks in their respective drafts.
Putting your eggs in the free agency basket is not something I would do. Historically it really has only worked out for Miami and LA and that was just in two specific off seasons (it obviously may work out for Cleveland as well, as James has them poised to be a real contender the next few seasons).