その後は秦が圧倒的に強勢となるが、秦との国境を接していない燕はその圧力を感じることなく、むしろ隣接する斉や趙の圧力に対抗するために秦と結ぶこともあった。ところが、紀元前228年に燕と秦の間の緩衝国的な役割を果たしていた趙が秦によって滅ぼされると、燕は直接秦の圧力を感じることになった。この状況を覆そうと太子丹は、秦王政に対して荊軻という刺客を送ったが失敗した。この時、荊軻に同行した秦舞陽は上述の秦開の孫である。激怒した秦王政に燕は攻められて、首都は陥落した（紀元前226年）。太子丹は殺され、燕王喜は遼東に逃れたが、紀元前222年に秦の将軍の王賁に攻められて王が捕虜となり、燕は滅んだ。督亢の地（燕の本土）は秦の広陽郡となり、昭王が置いた5郡と合わせて秦の統治下では6郡となった。朝鮮半島の燕の諸要塞は「上鄣」と「下鄣」の2ヶ所にまとめられたが、遼東郡に属することになり、前代と同様、官吏を派遣して治められた。
十分に力をつけた燕は、斉包囲網を形成し、紀元前285年/紀元前284年に楽毅率いる5ヶ国連合軍50万が斉軍20万を撃破し、更に楽毅は斉の首都臨淄を陥落させ、莒（きょ）と即墨を除く斉の都市を尽く占領した（この頃、燕は朝鮮半島南部の「真番」を略属させ、所々に要塞を築き官吏を派遣して治めた）。以後約5年間、燕は現在の河北省・遼寧省のみならず朝鮮半島と山東半島のほとんどを併合していたことになり、『山海経』の「鉅燕」（巨大なる燕）、『史記』の「全燕」（完全なる燕）とはこの時の燕の状態をさすとの説もある。一躍、表舞台に躍り出たと思われた燕だが、昭王が死に、子の恵王が即位すると楽毅を疑って趙に走らせてしまった。紀元前279年、占領していた斉は楽毅がいなくなると田単によって取り返され、山東半島の領土は失った（しかし昭王の置いた5郡と朝鮮半島はなお保持していた）。
戦国時代に入り、紀元前334年の段階で『史記』蘇秦列伝によると「東に朝鮮・遼東、北に林胡・楼煩、西に雲中・九原、南に呼沱・易水がある」といわれており、すでに広大な領域を支配していたことがわかる。紀元前323年に王（左飛）を名乗るようになった。第2代の王の噲（檜の偏を口に変えた字）は宰相の子之を盲信し、堯舜に倣うと言って禅譲を行い、これにより国内は騒乱状態となった（紀元前315年）。翌年ここに斉（田斉）が付けこみ、兵を出して侵攻し、全土を併合したため一時的に滅亡状態となった。紀元前313年、公子職が子之を倒して、斉軍も撤退したので、公子職は即位して昭王となった。
春秋時代の燕については、史書に記述が極めて乏しい。北方の山戎に攻められた際、当時の君主・荘公は隣国の覇者・斉の桓公に援軍を乞い、山戎軍を撃退したことがあった（紀元前664年/紀元前663年）。この戦いの後、荘公は桓公に感謝の意を表するために、斉まで桓公の軍を送っていった。その際に軍は、燕と斉の国境を越えて斉国内に入ってしまっていた。その当時の通念上、自国まで軍を見送らせることができる者は天子（すなわち周王）しかおらず、それについて時の名宰相・管仲に指摘された桓公は、一部自領を切り取って燕に授けたという。これにより桓公は諸侯の信頼を集め、ますます名声を高めたとされている。
隣接する西表島と共通する貴重な種が多数生息している。若干の差が見られるものもあり、たとえばヤエヤマスミレは、種としてはこの両島のみに分布する固有種であるが、西表島のものが亜種とされるのに対して、石垣島のものは変種のイシガキスミレとされている。一方、未だに大半を森林に覆われている西表島に対して、古くから開発が進んだ石垣島では、森林の面積は広くなく、数を減らしている生物も多い。例えば、コナカハグロトンボは石垣個体群のみが、沖縄県の絶滅危惧種に指定されている。宮良川河口のマングローブは、国内最大の面積をもつ。西部の名蔵アンパルは2005年にラムサール条約に基づいて保護すべき貴重な湿地に登録された。北部の米原のヤエヤマヤシ群落は天然記念物に指定されている。海岸ではサンゴ礁の発達がよく、特に南西側には西表島との間に石西礁湖が広がる。北西部の川平湾も、流れが急で多様なサンゴがみられることで有名である。東南側の白保サンゴ礁には、約120種以上のサンゴが分布しており、1987年に国際自然保護連合（IUCN）の調査により北半球最大規模とされたアオサンゴの大群落をはじめ、ハマサンゴの巨大な群落やマイクロアトール、ユビエダハマサンゴの群落が見られる。2007年8月1日、石垣島の面積の約3割にあたる約 7,000 ha が西表国立公園へ編入されるとともに、名称が西表石垣国立公園に変更された。これにより、かつて新空港問題で有名となった白保地区等が海中公園地区とされ、海中公園の面積は国内最大となった。これは、国立公園としては、1964年の富士箱根伊豆国立公園以来43年ぶりの大規模な拡張である。