The strikers bagged a penalty in either half before Ighalo netted a late consolation, ensuring Diego Simeone's side moved back to within a point of league leader Barcelona
The strikers scored from 12 yards in each half to secure maximum points for the visitors despite Ighalo's late consolation, with the hosts left to rue their profligacy in front of goal as they suffered a second consecutive home defeat in La Liga.
No team in Spain's top flight has scored fewer goals than Granada, but it began the match by far the more threatening of the two sides, with Manuel Iturra in particular causing problems for Diego Godin and Co.
Once again though, Granada couldn't turn possession into goals, and late on in the first half it was a clumsy challenge from captain Diego Mainz on Villa which gave Costa the chance to open the scoring, and the striker - who this week affirmed his desire to play for Spain - duly buried the spot-kick.
From that point, Atletico seized control of the game and midway through the second half, the team made its pressure tell. A swift counterattack led to another trip on Villa, and the veteran striker made no mistake as he converted the penalty.
Granada mounted a late assault on goal and Ighalo turned home a cross as the clock ticked over into stoppage time, but ultimately to no avail.
Tempers flared after the final whistle as Costa tangled with Iturra as the teams departed the pitch, but Atletico's 10th win in 11 games is all that will matter to Diego Simeone, as his side moved back to within one point of Liga leader Barcelona.