Last year's finalist West Bengal drew 1-1 with Maharashtra, while Karnataka edged past Goa by a solitary goal to grab the last two semifinal berths of the 62nd Santosh Trophy National Football Championship in Srinagar on Tuesday.
In the first match of the day, skipper Xavier Vijaykumar scored the all-important goal in the 53rd minute to secure Karnataka's place in the last four stage of the tournament.
In the other match, Soccor Velho put Maharashtra ahead before Bengal skipper Jayanta Sen came up with the equaliser which was enough to send the side to the semifinals.
Karnataka finished at the top of Group B while a draw was enough for Bengal to see them through, finishing runners-up in the group.
The match was inconsequential for Maharashtra as they were already out of the reckoning for semifinal after having lost their opening two matches in the quarterfinal league.
Bengal will now take on Services in the first semifinal on Thursday while Karnataka will be up against defending champions Punjab in the other last four match on Friday.
In the match between Bengal and Maharashtra, against all odds, it was the latter who started the proceedings scoring in the first half through Velho, who slotted home a powerful shot past Bengal custodian Somnath Khara.
Down by a goal, Bengal came out with purpose after the breather and created a couple of chances but striking duo of Syed Rahim Nabi and Shankaran Oraon failed to capitalise.
It was captain Sen who finally came to Bengal's rescue and scored the equaliser in the 61st minute.
Earlier in the first match of the day, Vijaykumar's goal in the 53rd minute helped Karnataka pip Goa.
Vijaykumar scored the only goal of the match from a counter-attack, outpacing a number of Goa defenders before slotting home the ball from just inside the box.
Karnataka could have won it 2-0 but just after his first strike, Vijaykumar wasted an easy chance in the 58th minute when he hit the right post after being fed by Dadanabeel.
Stung by the reversal, Goa tried hard to push for an equaliser and made several raids at Karnataka goal but without any success.
The first half ended goalless as both sides played a dull game which was more or less restricted to the midfield.
The best action of the opening half came in the 26th minute from Karnataka forward Dadanabeel whose powerful shot from a Vijaykumar cross was well saved by the airborne Goa custodian.
Goa, who needed a draw to qualify for the semifinals, too had a couple of chances to take the lead. In the 37th minute, Nicolau Borges messed up a chance from top of the Karnataka box with a weak left footer which was easily saved by Karnataka goalkeeper Gumpe Rime.