Cardiff City celebrated their return to the top flight of British football with a victory that left manager Malky Mackay singing the praises of a club who had weathered some tough times – and backing his striker Fraizer Campbell to add to his one England cap.

So many near misses, play-off failures and a deep-seated financial difficulties had left the club contemplating many more seasons outside of the Premier League. However, a goal from Aron Gunnarsson and two from Campbell proved too much for a Manchester City side that has now failed to win on any of their three visits to south Wales since Swansea’s promotion to the Premier League in 2011.

Mackay, who spent £28million over the summer in a bid to stave off the possibility of relegation, said: “I am absolutely delighted. For everyone at this football club, this day was a long time in coming. But what a day it was.

“It meant a lot to a lot of people so at the end of the game, I have to admit that I felt very proud. Of course I felt proud for the players because they have worked so hard to be here. But I felt proud for the fans too and the members of staff who work here. They have been through some tough times.”

Although a genuine winner as a player with the likes of Celtic, Norwich, West Ham and Watford, the tough-talking Glaswegian had been relatively downbeat in the build-up to the game, suggesting that opposite number Manuel Pellegrini’s biggest task on the day would be finding a place to park the team bus.

Still, the self-belief with which his players played implied that Mackay might have been playing a spot of early season mind games. Manchester City might have enjoyed the lion’s share of possession but they showed precious little imagination in the final third.

Mackay said: “We had a disciplined approach. We thought we knew how they would hurt us and we tried to snuff out that threat. We thought they would come very narrow with Silva and Navas coming inside. They always have a lot of midfield runners so that was an area in which we knew we needed to be tactically aware.”

But once Cardiff managed to get the ball, they highlighted their own quality, especially in the final third where Campbell was a constant thorn in the side of Joleon Lescott and Javi Garcia.

“I was delighted to get Fraizer from Sunderland for £600,000. It was a great bit of business on our part. He has worked so hard over the summer. I know he has had one cap but there is no reason that he can’t force his way back in. He was just what we needed and I knew that he would cause problems. He’s someone who can go from strength to strength. He is brave and honest.”

Mackay had predicted a cauldron-like atmosphere and he was certainly not wrong. “When the goals went in, I looked around at David Kerslake [assistant manager] and thought ‘wow’. I thought what a job Cardiff City have done. The fans were magnificent and they are going to be massively important to us as the season goes on.”

Campbell said: “They had a central midfielder playing at centre back, but they are great players, international players. There was some great delivery into the box today. It was very special but the most important thing was getting three points today. It was a massive bonus for us.

“The manager has been saying to us that we deserve to be in this league and that we must show what we are about. I think we have shown we have special determination.”

Pellegrini, though, refused to blame his side’s defeat on their defence. “There was no problem in central defence,” he said. “Cardiff didn’t cause us many problems, but the game was decided by two corners. Defending set-pieces is a duty for the whole team, not just the goalkeeper or the defenders. It doesn’t matter who is guilty.

“When we scored the first goal I thought it could be easy for us because we were playing a team that had 10 players in their box. But we didn’t play well. However, we didn’t play badly either.

“It’s important for Edin to score. He played a good match. We also have Negredo who is also an important player. He also scored. As an attacking team it’s very good to score two goals away from home. But we had another problem.”