ADVERTISEMENT

Knicks rally past Spurs to rule NBA Cup

Published Dec 17, 2025 02:31 pm

At A Glance

  • OG Anunoby scored 28 points, Jalen Brunson had 25, and the Knicks rallied to beat Victor Wembanyama and the San Antonio Spurs, 124-113.
New York Knicks center Karl-Anthony Towns (32) celebrates with teammates after his team's victory against the San Antonio Spurs in the NBA Cup championship basketball game Tuesday, Dec. 16, 2025, in Las Vegas. (AP Photo/Ian Maule)
New York Knicks center Karl-Anthony Towns (32) celebrates with teammates after his team's victory against the San Antonio Spurs in the NBA Cup championship basketball game Tuesday, Dec. 16, 2025, in Las Vegas. (AP Photo/Ian Maule)
LAS VEGAS (AP) — It's been more than half a century since the Knicks hung an NBA championship banner inside Madison Square Garden.
The wait since 1973 to add another one didn't end on Tuesday night, Dec. 16, but New York can make room for the NBA Cup banner.
OG Anunoby scored 28 points, Jalen Brunson had 25, and the Knicks rallied to beat Victor Wembanyama and the San Antonio Spurs, 124-113.
“This is great and we’re going to enjoy this,” Brunson said. “But once we leave tomorrow, we’re moving on.”
This is a championship roster — NBA Cup MVP Brunson, Josh Hart and Mikal Bridges cut down the nets in college at Villanova — with high hopes of representing the Eastern Conference in the NBA Finals.
“This is a single-elimination tournament when you get to a certain point, so every game counts,” New York coach Mike Brown said. “There was pressure on every game if you expect to be who you think you are. When you're able to have success, it breeds confidence in everybody in the organization.”
New York's Karl-Anthony Towns had 16 points and 11 rebounds despite battling a calf injury. He went into the locker room with a minute left before halftime and later exited for the bench with 5:06 remaining in the third quarter and didn't return until late in the fourth.
Dylan Harper led the Spurs with 21 points, Wembanyama scored 18 and De'Aaron Fox had 16.
Wembanyama excused himself early from the postgame news conference because he said “just lost somebody” on Tuesday.
New York dominated inside, outrebounding the Spurs 59-42, with Mitchell Robinson collecting 15 boards, including 10 on the offensive end in 18 minutes. That helped give the Knicks a 56-44 edge in points in the lane.
The Spurs, however, led for much of the game before the Knicks went on a 13-1 run that began late in the third quarter to go up 100-95. New York never trailed again.
“After 25 games in, I believe that we’ve shown some signs that we can be a pretty good team," Spurs coach Mitch Johnson said. “We’ve also shown that we have a lot of areas of improvement. I think that’s where we were living today.”
The Knicks got more than a trophy. Each player with a standard contract got an extra $318,560 for winning, making the total $530,933 for even reaching the final.
This game doesn't count in the standings, so both teams remain 18-7, putting them atop their respective divisions.
Just making the final bodes well for both teams. The previous four finalists — Los Angeles Lakers, Indiana, Oklahoma City and Milwaukee — also made the playoffs. The Pacers made the Eastern Conference finals in 2024, and the Thunder won the NBA championship last season.
ADVERTISEMENT
.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1561_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1562_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1563_widget.title }}

{{ articles_filter_1564_widget.title }}

.mb-article-details { position: relative; } .mb-article-details .article-body-preview, .mb-article-details .article-body-summary{ font-size: 17px; line-height: 30px; font-family: "Libre Caslon Text", serif; color: #000; } .mb-article-details .article-body-preview iframe , .mb-article-details .article-body-summary iframe{ width: 100%; margin: auto; } .read-more-background { background: linear-gradient(180deg, color(display-p3 1.000 1.000 1.000 / 0) 13.75%, color(display-p3 1.000 1.000 1.000 / 0.8) 30.79%, color(display-p3 1.000 1.000 1.000) 72.5%); position: absolute; height: 200px; width: 100%; bottom: 0; display: flex; justify-content: center; align-items: center; padding: 0; } .read-more-background a{ color: #000; } .read-more-btn { padding: 17px 45px; font-family: Inter; font-weight: 700; font-size: 18px; line-height: 16px; text-align: center; vertical-align: middle; border: 1px solid black; background-color: white; } .hidden { display: none; }
function initializeAllSwipers() { // Get all hidden inputs with cms_article_id document.querySelectorAll('[id^="cms_article_id_"]').forEach(function (input) { const cmsArticleId = input.value; const articleSelector = '#article-' + cmsArticleId + ' .body_images'; const swiperElement = document.querySelector(articleSelector); if (swiperElement && !swiperElement.classList.contains('swiper-initialized')) { new Swiper(articleSelector, { loop: true, pagination: false, navigation: { nextEl: '#article-' + cmsArticleId + ' .swiper-button-next', prevEl: '#article-' + cmsArticleId + ' .swiper-button-prev', }, }); } }); } setTimeout(initializeAllSwipers, 3000); const intersectionObserver = new IntersectionObserver( (entries) => { entries.forEach((entry) => { if (entry.isIntersecting) { const newUrl = entry.target.getAttribute("data-url"); if (newUrl) { history.pushState(null, null, newUrl); let article = entry.target; // Extract metadata const author = article.querySelector('.author-section').textContent.replace('By', '').trim(); const section = article.querySelector('.section-info ').textContent.replace(' ', ' '); const title = article.querySelector('.article-title h1').textContent; // Parse URL for Chartbeat path format const parsedUrl = new URL(newUrl, window.location.origin); const cleanUrl = parsedUrl.host + parsedUrl.pathname; // Update Chartbeat configuration if (typeof window._sf_async_config !== 'undefined') { window._sf_async_config.path = cleanUrl; window._sf_async_config.sections = section; window._sf_async_config.authors = author; } // Track virtual page view with Chartbeat if (typeof pSUPERFLY !== 'undefined' && typeof pSUPERFLY.virtualPage === 'function') { try { pSUPERFLY.virtualPage({ path: cleanUrl, title: title, sections: section, authors: author }); } catch (error) { console.error('ping error', error); } } // Optional: Update document title if (title && title !== document.title) { document.title = title; } } } }); }, { threshold: 0.1 } ); function showArticleBody(button) { const article = button.closest("article"); const summary = article.querySelector(".article-body-summary"); const body = article.querySelector(".article-body-preview"); const readMoreSection = article.querySelector(".read-more-background"); // Hide summary and read-more section summary.style.display = "none"; readMoreSection.style.display = "none"; // Show the full article body body.classList.remove("hidden"); } document.addEventListener("DOMContentLoaded", () => { let loadCount = 0; // Track how many times articles are loaded const offset = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; // Offset values const currentUrl = window.location.pathname.substring(1); let isLoading = false; // Prevent multiple calls if (!currentUrl) { console.log("Current URL is invalid."); return; } const sentinel = document.getElementById("load-more-sentinel"); if (!sentinel) { console.log("Sentinel element not found."); return; } function isSentinelVisible() { const rect = sentinel.getBoundingClientRect(); return ( rect.top < window.innerHeight && rect.bottom >= 0 ); } function onScroll() { if (isLoading) return; if (isSentinelVisible()) { if (loadCount >= offset.length) { console.log("Maximum load attempts reached."); window.removeEventListener("scroll", onScroll); return; } isLoading = true; const currentOffset = offset[loadCount]; window.loadMoreItems().then(() => { let article = document.querySelector('#widget_1690 > div:nth-last-of-type(2) article'); intersectionObserver.observe(article) loadCount++; }).catch(error => { console.error("Error loading more items:", error); }).finally(() => { isLoading = false; }); } } window.addEventListener("scroll", onScroll); });

Sign up by email to receive news.