Federer said it was "very exciting" to reach 300 wins, a total that leaves him just six away from Martina Navtratilova's record of 306 and moves him closer to a fifth Australian Open title.
The 17-time major winner and third seed won 6-4 3-6 6-1 6-4 in two hours, 40 minutes under the closed roof on Rod Laver Arena and will face Belgium's 15th seed David Goffin in the next round.
"Like when I reached 1,000 (career wins) last year, it was a big deal for me. Not something I ever aimed for or looked for, but when it happens, it's very special. You look deeper into it, I guess, where it's all happened and how. So it's very nice, I'm very happy."
With the landmark win, Federer also extends his record over Bulgarian 27th seed Dimitrov, dubbed "Baby Fed" because of the similarity in their playing styles, to 5-0.
However, it wasn't an entirely convincing display from the four-time Australian Open winner who committed an uncharacteristic 55 unforced efforts, much more than Dimitrov's 44.
"It was a difficult position for me after losing the second set and Grigor was playing well. I thought I was struggling a little bit," Federer said.
"I didn't feel it was really happening out there and it was an important start for me to the third set.
"Thankfully I got the early break and I was able to stay in the lead and everything started to come back, the serve, my footwork. It was complicated, but those matches are even nicer to win, I must say."
He sought courtside treatment from the trainer several times during the match.
Dimitrov was bidding to reach the round of 16 at the Open for the third straight year including making the quarterfinals in 2014, where he lost to Rafael Nadal.
