생선이나 육류로 만든 찜과 구별하여 채소로 만든 찜을 선이라 부르고 있는데, 그 개념이 명확하지는 못하다.
우리 나라 최고(最古)의 조리서인 『음식지미방』의 동과선은 “늙은 동아를 도독하게 저며서 살짝 데쳐내어 물기 없게 건져 기름을 넣고 심심하게 끓인 간장에 담갔다가 따라 버리고, 생강을 다져 넣고 달인 새간장에 다시 담가 두었다가 쓸 때 초를 쳐서 쓴다.”고 되어 있어 오늘날의 선과는 개념이 다름을 알 수 있다.
1800년대 말엽의 조리서인 『시의전서(是議全書)』에 나오는 남과선(호박선)에서 비로소 “애호박의 등쪽을 도려 내고 갖은 양념을 소로 넣고 푹 쪄낸 다음 그 위에 초장에 백청을 타서 붓고 고추·석이·달걀을 채쳐 얹고 잣가루를 뿌려 쓴다.”고 하여 조리법이 오늘날의 선과 비슷해지고 있다.
그러나 1930년대의 조리서에는 여전히 청어선·태극선·양선·달걀선 등 동물성 식품으로 만드는 선이 기록되어 있어 이때까지도 그 개념이 명확히 정리되지 못하고 있음을 볼 수 있다. 오늘날에는 식물성 재료에 소를 넣고 찐 음식으로 제한되어 있다.
만드는 법은 먼저 애호박이나 오이를 4, 5㎝의 길이로 잘라 칼집을 내고 잠깐 절여서 약간 짜놓는다. 쇠고기와 양파는 다져서 양념하여 소로 만든다. 애호박이나 오이에 소를 끼워서 적당한 냄비에 담고 육수나 채소 국물에 간을 해서 잠길 정도로 5∼10분간 끓인다. 익으면 석이채·실고추·지단을 고명으로 얹는다. 이 밖에 선의 종류로는 가지선·고추선·동아선·무선·배추선 등이 있다.