I think more importantly its about signing players with potential to be one of the best in the world, before they really establish themselves as such. If they move to another big club it's almost impossible to sign them later, unless they come with some baggage. We used to have our pick from most clubs in the league but we can't just take the best players from Spurs, Everton, Villa etc whenever we want anymore, there's plenty of competition to sign them and the fees are astronomical by the time they've had a couple good seasons at that level (Grealish, Richarlison, Modric). We've been farming Dortmund and Ajax the past few years and signings from those clubs are neither cheap, nor a guaranteed to success in the PL. It's not necessarily possible to compete with Dortmund to sign promising teenagers either, as they can afford to give them more playing time with the intention of selling them on later, but perhaps in one off cases we should do more to sign the some of the most promising teenagers, before they have 100 top flight appearances under their belt and a £100m price tag.
We have tended to hold off in the past 10-15 years on signing players who are at that 'nearly world class and potentially so' level, and missed out on some players we may have signed. Signing players and selling at a profit isn't the aim unless you are Dortmund and aspire to be a feeder club, for United its a decent fall back option if the players don't progress. Selling at a profit isn't guaranteed and requires a combination of factors - some luck and timing (Bielsa had a hard on for James), being decisive quickly and selling whilst their stock is still quite high, or taking the opportunity to do so if it arises even if unplanned, the player agreeing to move, a club being able to afford their wages etc. However, we certainly could have been more decisive in moving on players on in the past more swiftly and for better fees. James was a weird one anyway as there were better players in the Championship, he was bought purely because he had a unique skillset which can be useful to a squad. But the likes of Forlan, Hernandez, Nani, Bebe, Zaha, we did really poorly in terms of what we sold them for, and plenty of academy prospects who we keep too long then sell for minimal fees or for free. Selling Garner for a decent fee fairly swiftly may be a sign of change.
You certainly can also sign players who have been discarded by bigger clubs but it's equally risky and you need to be prepared to get burnt, as we were with Sanchez, Di Maria, Lukaku, arguably Mata, Schweinsteiger in a sense despite being free/cheap Bayern were happy to get rid, Varane is doing well but injuries are a concern, Casemiro promising start but let's see in 18 months time. A few such signings who were successful elsewhere though include Yaya to City from Barca, Robben to Bayern from Madrid, Sneijder to Inter from Madrid, Sanchez to Arsenal from Barca.