McCain, Obama's GOP rival for president in 2008, was celebrated at the Washington Hilton, while Powell -- who endorsed Obama for president -- was the guest of honor at the National Building Museum.
"There are few Americans who understand this need for common purpose and common effort better than John McCain," Obama said at the dinner for McCain. "It is what he has strived for and achieved throughout his life. It is built into the very content of his character."
McCain this month urged other Republicans to work closely with Obama.
"There are not many times in history," McCain said on Fox News Channel, "that a president has come to office with as many challenges as the president-elect does and that's incumbent then upon all of us to try and do all we can to work with him."
At the event held in Powell's honor, Obama said it was "easy to slip into superlatives when you talk about Colin Powell," The New York Times reported.
"The lesson he's learned from his own rise is not his own greatness but his nation's greatness," Obama said.
The president-elect also held a dinner Monday night to honor Vice President-elect Joe Biden.
Video of Victoria’s Secret models trying to 'twerk' hits Instagram
Megyn Kelly: Santa Claus and Jesus are both white men