He failed to get through to Q2 for the Race of Brazil but started ahead of his teammate. He finished in the points in his first race as a works driver. While letting his teammate pass during qualifying for the Race of Morocco, Hernández clashed with fellow BMW driver Andy Priaulx and finished the session nineteenth. Hernández retired from race two on the opening lap and his stranded car brought out the safety car. After qualifying for the Race of France, he was one of seven drivers who had their times from Q2 deleted for exceeding the engine rev limit on theirs cars. He finished fifth in race one but a collision with Porteiro on the first lap put Hernández out of the race and his BMW 320si caught fire, Porteiro was issued with a drive–through penalty for his involvement. He started on pole position for the reversed grid race at the Race of Spain but dropped down to sixth by the end of the race. Hernández took his first overall WTCC victory in race two of the Race of the Czech Republic, having started on the second row and passed pole sitter Yvan Muller on the third lap. Race one of the Race of Portugal saw Hernandez and the Lada of Jaap van Lagen, who started 17th and 18th respectively tangle after the rolling start, pitching Hernandez in the concrete barrier. He was subsequently taken to hospital for checks on his ankle and was unable to start race two. Contact from SEAT Sport driver Jordi Gené during race two of the Race of Italy spun Hernández and dropped him down the order and he eventually finished eleventh. He finished the season eleventh in the drivers' championship as the fourth best BMW factory driver and one place ahead of his teammate. In December 2009, BMW announced it was to reduce its involvement in the WTCC from five cars to two. ROAL Motorsport would no longer be involved with the German manufacturer, leaving Hernández to find a seat himself for 2010.